_kbhit()函数的客户端-服务器C ++替代

时间:2018-07-09 12:56:44

标签: c++ input client-server nonblocking

我的项目是一个客户端服务器应用程序(C ++),更具体地说是群聊。

我在VS17的2种不同解决方案中构建了客户端和服务器。

现在,我的问题是,当我想将消息从一个客户端发送到服务器,并将消息重定向到连接的其他客户端时,我不想成为阻止功能,所以我{{1} }函数,但是我无法正常工作。除了used _kbhit() + kbhit()getch()之外,还有什么替代输入方式?

客户

cin

2 个答案:

答案 0 :(得分:0)

在ncurses中,您可以尝试使用nodelay()函数将getch()转换为非阻塞调用,如果没有可用的按键,则返回ERR。

答案 1 :(得分:0)

我认为应该是:

if (_kbhit () != 0) {
    ....

请参阅:https://msdn.microsoft.com/en-us/library/58w7c94c.aspx