socket--Connection refused的解決辦法

今天遇到一個這樣的問題,在進行SOCKET連接時,地址和端口都正確,對側服務器端也處於監聽狀態,但仍會報錯,錯誤是:

Connection refused

後來發現,問題原因是字節序錯誤,源代碼中是這樣寫的:

#ifdef _LITTLE_ENDIAN
 server.sin_port=xshort(portNumber);
#else
 server.sin_port=portNumber;
#endif

要想使用低字節序進行傳輸數據,則需要在makefile中加入對_LITTLE_ENDIAN的定義,於是在makefile 中加入瞭如下紅色部分:

DEFINES = -D_REENTRANT -DCH7_Q -DLINUX -D_LITTLE_ENDIAN

重新編譯後,socket連接正常。

作爲一個經驗記錄下來。

發佈了26 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章