メッセージを送信するときに問題が発生します。スペースは個々のメッセージに分割されます。メッセージはsprintf(message, "PRIVMSG %s :%s\n", irc_chan, buffer);
を使用して構成されます。エラーは次のように表示されます(個々のメッセージは""
に含まれています)。私は"Hi there"
というメッセージを入力します。それは"Hi"
"there"
を出力します。バッファはchar[1024]
です。どんなアイデアも教えてください。IRCクライアントが不適切にメッセージを送信しています。
以下は、メッセージを送信するコードの一部です。ソケットに使用したクラスは問題ではなく、メッセージを受信してFINEに接続できます。
scanf("%s", buffer);
sprintf(message, "PRIVMSG %s :%s", irc_chan, buffer);
send(IRCSocket.iSocket, message, strlen(message), 0);
EDIT:Computer Guruの助けを借りてこれを解決しました。 scanf()を使用していましたが、cin.getline()を使用していたはずです。助けてくれてありがとう、非常に感謝しています。
入力をどのようにキャプチャしていますか? – RageD
Stdin、scanf( "%s"、バッファ); scanf( "%s"、&buffer);違いはありません。 – Cr15py
この文脈で「それ」と「彼ら」とは何ですか? – nos