linux c之解决使用socket函数返回为0的问题

1、问题:

在 linux 平台下 写socket,实现简单的tcp通信,服务端第一次调用 socket函数返回 0

 

2、找原因:

我的代码是这样写的

 

 if ((server_sockfd = socket(AF_INET,SOCK_STREAM, 0) < 0));

 

特么总是返回0,日了狗

 

自找方法一:

到网上找为什么socket函数返回0,5分钟过去,没反应

 

自找方法二:

到网上找linux socket tcp编程

然后得到代码,然后输入终端测试,发现socket返回是3,日了狗,然后再去缩小范围,只执行2行代码,一行实现socket,一行打印结果,依然是3,日了狗,然后再把自己

写的代码也只执行这2行,我插,依然是0,奔溃了,难道socket还受终端影响,不应该啊,然后果断问旁边做服务端开发的,当然也是搞安卓的,然后我让他看的时候,发现代码写错,那个 < 写错位置了,尼玛,3 < 0 否,然后把0给了这个server_sockfd 为0,又因为 0 不小于 0,所以代码往下执行

 

 

 if ((server_sockfd = socket(AF_INET,SOCK_STREAM, 0)) < 0);

 

 

 

3、总结

      以后千万不要犯这种傻逼问题,代码要写好。

 

 

chen.yu CSDN认证博客专家 博客排名前200
深信服三年半工作经验,目前就职游戏厂商,希望能和大家交流和学习,
微信公众号:编程入门到秃头 或扫描下面二维码

零基础入门进阶人工智能(链接)


已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 猿与汪的秘密 设计师:白松林 返回首页
实付 19.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值