我正在C/C++(混合)中的Linux機器上開發專用遊戲服務器。我有下面的代碼片段:Odd socket()錯誤 - 返回-1,但errno = ERROR_SUCCESS
int sockfd=socket(AI_INET, SOCK_DGRAM, 0);
if(sockfd==-1)
{
int err=errno;
fprintf(stderr,"%s",strerror(err));
exit(1);
}
我的問題就在這裏,是插座返回-1(意味着失敗),目前正在印刷錯誤字符串,但它是「成功」(ERROR_SUCCESS)。
其他說明:
- 我請求插座> 1024的端口上(斷章取義,但以爲我會提到)
- 我執行應用程序以超級用戶
您是從您的應用程序剪切/粘貼代碼還是重新鍵入?如果這是一個重新類型,我會檢查你的代碼是否有(比較)if和not =(賦值)。 – 2010-01-04 14:50:00
這是'=='好嗎... – aviraldg 2010-01-04 14:50:37
errno的價值是什麼? – 2010-01-04 14:56:45