私はwinapiでソケットを使用するのは初めてですが、このコードがあり、ソケットからのすべてのデータを印刷しようとしていますが、印刷しようとすると、シンボルがごちゃ混ぜになったものとして出てきます。これを行う方法の例を探しましたが、バッファからデータを収集した後にデータを出力する方法を示す例はありません。
do
{
#define DEFAULT_BUFLEN 512
int recvbuflen = DEFAULT_BUFLEN;
char recvbuf[DEFAULT_BUFLEN];
recv(ConnectSocket, recvbuf, recvbuflen, 0);
printf("%.*s", recvbuflen, recvbuf);
}
while (iResult > 0);
わかりました、コードをこれに変更しました
do
{
#define DEFAULT_BUFLEN 1000000
int recvbuflen = DEFAULT_BUFLEN;
char recvbuf[DEFAULT_BUFLEN];
ssize_t len = recv(ConnectSocket, recvbuf, recvbuflen, 0);
recv(ConnectSocket, recvbuf, recvbuflen, 0);
printf("%.*s", recvbuflen, recvbuf);
}
while (iResult > 0);
しかし、今ではソケットの最初の部分だけからすべての情報を出力していないようです