为啥有的操作系统下connect总返回0呢???

铜板 2006-08-24 06:34:14
我的代码如下(初始化的代码没贴)
SOCKET sTest = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (sTest == INVALID_SOCKET)
{
ASSERT(0);
return;
}

struct sockaddr_in saServer;
saServer.sin_family = AF_INET;
saServer.sin_port = htons(m_nProxyPort);
saServer.sin_addr.s_addr = uiProxyIP;

// 测试连接
int nRet = connect(sTest,(struct sockaddr *)&saServer,sizeof(saServer));
就是上面这句,在有的机子上不管我输入什么样的IP、PORT,它都是返回0,郁闷啊(我的机子上是对的)
...全文
234 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
铜板 2006-09-01
  • 打赏
  • 举报
回复
最新发现,只有当端口为0时,才会出现这个问题。
f_acme 2006-08-25
  • 打赏
  • 举报
回复
不会吧,非法地址也返回0,那怎么区分啊?
saServer.sin_addr.s_addr = uiProxyIP;是否少了inet_addr啊?
铜板 2006-08-25
  • 打赏
  • 举报
回复
晕,我是说不论我 输入怎样的iP它都返回0啊!!这正常吗????
ShanChunZhenZi 2006-08-24
  • 打赏
  • 举报
回复
connect()函数不反回零难倒你希望它反回SOCKET_ERROR呀,反回0就表示连接成功,SB……

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧