【发布时间】:2016-04-06 11:02:18
【问题描述】:
我目前正在尝试通过基于 TCP/IP 的套接字与外部应用程序进行通信。我已经成功地与客户端建立了连接并收到了一些数据。本手册here 指出
收到此命令后,客户端必须读取确认 来自守护进程的八位字节。肯定确认是一个八位字节的零位。否定确认是任何其他模式的八位字节。
我想发送一个肯定的确认,我是这样发送的 我的服务器监听代码来自here
void WriteData(std::string content)
{
send(newsockfd,content.c_str(),content.length(),0);
}
WriteData("00000000");
我的问题是我是否正确发送了这些数据(零位八位字节)?
更新:
我已经阅读了这篇文章here 其中规定 send 只允许发送一个 char* 数组。所以我不确定如何通过套接字发送一个字节。我知道我可以做这样的事情
std::bitset<8> b1 ; // [0,0,0,0,0,0,0,0]
但我不确定如何通过套接字发送它。
【问题讨论】:
-
不知道为什么投反对票或收盘
-
"00000000"是一个 8 个字符的字符串,不是要约。 -
"00000000"是一个八字符的字符串,后跟一个空字节。不是零位的八位字节。 -
感谢您提及,您能否提出一种方法来显示我如何通过套接字发送八位字节,因为套接字只需要一个字符数组
-
一个八位字节是八位。一个字符。一个 0 位的八位字节是一个 char 值为零。