socket()用于创建套接字,在使用时要包含头文件:

#include <sys/types.h>
#include <sys/socket.h>

Socket函数的参数
它包含以下参数:

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

domain
参数表示套接字要使用的协议簇,协议簇的在“linux/socket.h”里有详细定义,常用的协议簇:
AF_UNIX(本机通信)
AF_INET(TCP/IP – IPv4)
AF_INET6(TCP/IP – IPv6)

type
“type”参数指的是套接字类型,常用的类型有:
SOCK_STREAM(TCP流)
SOCK_DGRAM(UDP数据报)
SOCK_RAW(原始套接字)

protocol
协议“protocol”一般设置为“0”,就是说在已经确定套接字使用的协议簇和类型时,这个参数的值就为0。
但是有时候创建初始套接字时,在domain参数未知情况下,即不清楚协议簇和类型时,protocol参数可以用来确定协议的种类。

返回值
当套接字创建成功时,返回套接字,失败返回“-1”,错误代码则写入“errno”中。

Logo

更多推荐