次のコードを使用してUDPを送信しようとしていますが、奇妙な結果が得られます。
if((sendto(newSocket, sendBuf, totalLength, 0, (SOCKADDR *)&sendAddr, sizeof(sendAddr)) == bytesSent) < 0)
{
printf("Send error! - %d\n", WSAGetLastError());
}
ただし、totalLength変数が30に設定されている場合、sendto関数は実際には2292556を返しますが、少なくとも30マーク付近で何かを返す必要はありませんか?sendtoを使用する前にtotalLength変数を確認しましたが、同意した値が返されますが、sendtoは大量の値を返します。全長が実際のバッファサイズより大きくなることはありません。
WSAGetLastErrorは0を返しています。
ありがとう。