我正在调用setsockopt函数,如下所示,关闭我从服务器发送到客户端的相同数据克的循环。
char loop_back = 0;
if((loop_back_flag = setsockopt(sock, IPPROTO_UDP, IP_MULTICAST_LOOP, (char *)&loop_back, sizeof(loop_back))) == -1)
{
// Print Error message
}
else
{
// print success message with loop_back_flag value
}
但我观察到的是:当我打印loop_back_flag时,它打印为255.
现在我的理解是它应该在错误时返回-1或者如果成功则返回0。 这是什么255?我在setsockopt函数调用中犯了什么错误吗?
答案 0 :(得分:0)
编辑:只需将loop_back
声明为int
int loop_back = 0;
如果您查看人员指南,setsockopt
会返回int