我warning
在编译我的client - server UDP socket
模拟时收到以下信息:
警告:将'int *'传递给'socklen_t *'(又名'unsigned int *')类型的参数会在指向具有不同符号的整数类型的指针之间转换[-Wpointer-sign]
这是相关的代码:
#define BUFLEN 2048
struct sockaddr_in myaddr, remaddr;
int fd, recvlen, slen=sizeof(remaddr);
...
char response[BUFLEN];
recvlen = recvfrom(fd, response, BUFLEN - 1, 0, (struct sockaddr *)&remaddr, &slen);
我一直在参考罗格斯大学的教程。我对为什么会出现这个警告有一个很好的想法(它希望我使用socklen_t *
),但我想问一下 SO 社区。
- 为什么会出现此警告?
- 我怎样才能摆脱它?