int setsockopt(
SOCKET s,
int level,
int optname,
const char* optval,
int optlen
);
setsockopt这个函数用来设置和socket相关的一些设置。
/*
s:标识一个套接口的描述字。
level:选项定义的层次;目前仅支持SOL_SOCKET和IPPROTO_TCP层次。
optname:需设置的选项。
optval:指针,指向存放选项值的缓冲区。
optlen:optval缓冲区的长度。
*/
第一个参数显然就是socket的fd,
fd是什么意思呢?????是最大的连接数?
第二个表示这个设置是处于socket的哪一层,SOL_SOCKET,IPPROTO_TCP1,NSPROTO_IPX。
level指定控制套接字的层次.可以取三种值: 1)SOL_SOCKET:通用套接字选项. 2)IPPROTO_IP:IP选项. 3)IPPROTO_TCP:TCP选项.
第三个参数表示是哪个属性的设置,有的属性是一个bool,有的是int或者结构。当属性是bool的时候就用一个非0的int来设置其为真,0则为假。若设置的属性为int的或者结构的,那么就将值设置进去。
第四个参数和第5个参数分别就是设置的值的地址以及字段
长度。
对于每一层都有很多属性可以设置,具体的宏的定义要看帮助了,一般如果自己编程用的不多的话,是很难记住的,我就用的不多,道行还不够,:)