c - C 中的套接字问题(函数接受)

标签 c sockets

当我创建那个套接字时,执行函数 accept 但这个函数会导致警告,我不知道为什么,有人可以帮助我吗?我的代码片段是

serv_sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
checkError( (serv_sock < 0), "cliente: no puedo abrir un socket TCP\n");
serv_addr.sin_family = AF_INET;
serv_addr.sin_port = htons(atoi(argv[1]));
serv_addr.sin_addr.s_addr=0;
bind(serv_sock, (struct sockaddr *) &serv_addr, sizeof(serv_addr));
listen(serv_sock,5);
clilen = sizeof(cli_addr);
while(clilen > 0){
     sockfd = accept(serv_sock, (struct sockaddr *) &cli_addr, &clilen);

Ant 的警告是:将“int *”传递给类型为“socklen_t *”(又名“unsigned int *”)的参数会在指向具有不同符号 [-Wpointer-sign] 的整数类型的指针之间进行转换

最佳答案

clilen 的声明在哪里?

应该声明:

socklen_t clilen;

而根据编译器警告,我相信您已经使用过:

int clilen;

关于c - C 中的套接字问题(函数接受),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50882974/

相关文章:

java - 在 Java 服务器中重用客户端 java 套接字

java - 在 JNI 下以 native 代码获取 java 缓冲区的最有效方法是什么?

web-services - 套接字编程与 Web 服务?

Python - 使用套接字将数据发送到网络上的每个 IP 地址

linux - tcpdump 报告的 tcp 数据包 “size” 与实际发送的 IP 数据包有何关联?

c# - 如何在 C# String 和 C Char 指针之间进行转换

C:怪串现象

c - 使用 Malloc 连接两个字符串

c - GTK "callbacks"必须是静态函数吗?

c - C 中的 malloc : same sizeof before and after?