错误号 88 ENOTSOCK__ Socket operation on non-socket
错误原因:因为在建立socket的时候少了一对括号导致,错误代码如下:
if(sockfd=socket(AF_INET, SOCK_STREAM, 0)<0)
{
cout << "socket error" << endl;
return 0;
}
正确代码应该是将sockfd=socket(AF_INET, SOCK_STREAM, 0)使用括号括起来,正确代码如下
if((sockfd=socket(AF_INET, SOCK_STREAM, 0))<0)
{
cout << "socket error" << endl;
return 0;
}
错误号:111 ECONNREFUSED Connection refused
错误原因:因为在程序中将监听端口号设置为13导致
解决办法是将端口号设置为大于1024的数字。
本文详细解析了socket编程中常见的错误号88ENOTSOCK和111ECONNREFUSED的原因,并提供了相应的解决方案。重点在于正确使用括号确保socket建立过程的完整性,同时建议将监听端口号设置为大于1024的数字以避免冲突。通过遵循这些指导,开发者可以有效避免这些问题,提升程序稳定性和安全性。
2368

被折叠的 条评论
为什么被折叠?



