在我的程序的服務器端,當程序遇到accept函數時,它等待連接。發現連接傳入後(與我的客戶端連接後),accept()方法返回1.基於該返回,它嘗試接收併發送到套接字1,這是一個錯誤的套接字。Windows套接字accept()返回錯誤值
這是從我的服務器的一些代碼:
for(;;)
{
if(sConnect = accept(sListen, (SOCKADDR*)&addr, &addrlen) != SOCKET_ERROR)
連接後發現sConnect有1
爲什麼會發生這種情況的價值?我該如何解決它?
添加一些括號周圍'sConnect =接受(sListen, (SOCKADDR *)&addr,&addrlen)' –
我會讓這兩行代碼更具可讀性,並避免此錯誤,並警告編譯器應爲該代碼發出警告。 – drescherjm