首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >getpeername()不适用于与本地主机的连接

getpeername()不适用于与本地主机的连接
EN

Stack Overflow用户
提问于 2009-09-17 01:57:32
回答 4查看 1.7K关注 0票数 0

编辑:重复这个问题,如果我正在侦听端口54321,并且侦听端口12345的本地进程连接到我,创建套接字s,我如何找到它正在侦听的端口?

代码语言:javascript
运行
复制
sockaddr_in addr;
int len = sizeof(addr);
getpeername(s, (sockaddr*)&addr, &len);
cout << string(inet_ntoa(addr.sin_addr)) << ":" << ntohs(addr.sin_port) << endl;

输出不应该是127.0.0.1:12345吗?取而代之的是,我得到了127.0.0.1:62305或其他任意的端口号。这是我的错误,还是应该是这样的?

EN

Stack Overflow用户

发布于 2009-09-17 02:12:47

如果%s已连接,则应获取127.0.0.1:12345。你确定它是连接的吗?

您需要检查getpeername()的返回码,以确保没有错误。

票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1436374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档