linux c之解决使用socket函数返回为0的问题
生活随笔
收集整理的這篇文章主要介紹了
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、總結
????? 以后千萬不要犯這種傻逼問題,代碼要寫好。
?
?
總結
以上是生活随笔為你收集整理的linux c之解决使用socket函数返回为0的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux c之perror和exit使
- 下一篇: linux c之使用共享内存实现进程间通