RichYoungZz 2022-02-14 15:53 采纳率: 85.7%
浏览 11

关于网络编程的bind

img

我想通过指定IP和任意IP的方式来实现我的程序,当我指定ip地址的时候,执行如下语句

if(ip != "")server_addr.sin_addr.s_addr = inet_addr("101.43.172.168");

这时我下面的bind()就返回-1,程序就出错了。

而我不指定ip地址的时候

 else server_addr.sin_addr.s_addr = htonl(INADDR_ANY);

也就是走这条语句,程序就可以正常运行,正常bind(),请问这是什么原因呢?

其中,101.43.172.168是我腾讯云的外网地址,我的程序也是在这个云服务器上面跑的

  • 写回答

1条回答 默认 最新

  • 你的小电视 2022-02-14 16:52
    关注

    指定或不指定ip,有c++的默认参数,为什么还要自己写if-else?

    评论

报告相同问题?

问题事件

  • 创建了问题 2月14日