【发布时间】:2012-08-28 04:32:36
【问题描述】:
我很难为以下场景找到一个好的解决方案:
write 函数接受一个 const char,通过 cin.get(ch) 调用 将其作为用户输入给出em>写(ch)。 ch 是一个 char。
while (c.active())
{
char ch;
cin.get(ch); // blocking wait for standard input
if (ch == 3) // ctrl-C to end program
break;
c.write(ch);
}
这工作正常,但我想修改它,以便可以进行如下输入:“0A00CD88”或“0A 00 CD 88”并将其用作write的输入,它使用它作为 boost::asio::buffer 的输入。
为此,我可以使用 C/C++ 和 boost。
感谢任何分享这方面知识的人!
【问题讨论】:
-
更具体地说:“0A 00 CD 88”是我需要发送的命令。所以我必须能够输入“0A00CD88”或空格——我真的不在乎——但它必须转换成与 0A、00、CD、88 值对应的字符流。对不起,这在我最初的问题中并不清楚。 @denys:谢谢-您的解决方案帮助并指导我改进了我的问题
-
我找到了一个类似的例子here,但我今天有点慢 - 仍在尝试以某种方式适应这个,有什么想法吗?
标签: c++ c char boost-asio cin