以下のコードを使用して、ソケットからデータを読み取ります。反対側では、文字列データを送信する Java クライアント。ただし、データの読み取り中に、文字列の末尾に追加の \n が表示されます。なぜこれが起こるのか誰でも説明できますか?
コード:
unsigned char buf[100];
rd=read(newsockfd,buf,100);
char cmd[30];
sprintf(cmd,"%s",buf);
結果:
buf->"DATA\n"
cmd->"DATA\n"
クライアントから「DATA」を送信すると、サーバー側で「DATA\n」を取得しています。誰でもこの理由を説明できますか? 送信した正確なデータを抽出するにはどうすればよいですか。