我想通過使用下面的代碼發送UDP,但我得到奇怪的結果。當totalLength變量設置爲30 sendto函數實際上返回2292556,它應該不會再重返至少圍繞盤的30標記的東西C windows sendto()
if((sendto(newSocket, sendBuf, totalLength, 0, (SOCKADDR *)&sendAddr, sizeof(sendAddr)) == bytesSent) < 0)
{
printf("Send error! - %d\n", WSAGetLastError());
}
但是說什麼?在使用sendto之前,我已經檢查了totalLength變量,它會愉快地返回一個我同意的值,然後sendto返回一個巨大的值。總長度從不大於實際緩衝區大小。
WSAGetLastError剛剛返回0.
謝謝。
啊是的,當然我不能相信我沒有看到這一點。我已經爲此感到沮喪了將近一個小時v.v – Alistair 2009-11-23 21:05:04
Blame =,==和行太長了:) – schnaader 2009-11-23 21:06:45