TCP/IP编程之socket函数详解


函数原型:

SOCKET(2)                  Linux Programmer's Manual                 SOCKET(2)

NAME
       socket - create an endpoint for communication

SYNOPSIS
       #include           /* See NOTES */
       #include 

       int socket(int domain, int type, int protocol);

socket函数在成功时返回一个小的非负整数,它与文件描述符类似,我们把它称为套接字描述符,简称sockfd。为了得到这个套接字描述符,我们只是指定了协议族(IPv4或IPv6或Unix)和套接字类型(字节流、数据报或者原始套接字)。我们并没有指定本地协议地址或者远程协议地址。


参数说明,如图示:

TCP/IP编程之socket函数详解_第1张图片

TCP/IP编程之socket函数详解_第2张图片


其中family参数指明协议族,type参数指明套接字类型,protocol一般设置为0,以选择指定的family和type组合的系统默认值。


返回值:

返回:若成功则为非负描述符,若出错则为-1


IPv4的TCP伪代码如下:

int sockfd = socket(AF_INET, SOCK_STREAM, 0);


参考:《unix网络编程》·卷1


你可能感兴趣的:(TCP/IP,TCP/IP)