setsockopt的使用
时间: 2024-01-19 13:18:46 浏览: 71
setsockopt函数用于设置套接字选项的值。它的原型如下:
```c
int setsockopt(int socket, int level, int option_name, const void *option_value, socklen_t option_len);
```
其中,参数socket是套接字描述符,level是选项所属的协议层,option_name是选项的名称,option_value是选项的值,option_len是选项值的长度。
下面是一个使用setsockopt函数的示例:
```c
#include <sys/types.h>
#include <sys/socket.h>
int main() {
int sockfd = socket(AF_INET, SOCK_STREAM, 0);
if (sockfd < 0) {
perror("socket");
return -1;
}
int option_value = 1;
if (setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &option_value, sizeof(option_value)) < 0) {
perror("setsockopt");
return -1;
}
// 其他操作...
return 0;
}
```
在上面的示例中,我们创建了一个套接字,并设置了SO_REUSEADDR选项的值为1。这个选项用于允许地址重用,即使之前的连接还未完全关闭。
阅读全文