0
我在客户端实现多客户端连接的客户端服务器聊天程序时遇到问题。问题是,我遇到的问题是,如何让客户知道键入内容?目前,我的printf语句没有被输出到屏幕上。有没有一种方法可以通知客户,可以不使用新行来输入?c socket:刷新数据让客户端知道键入
这里是有关代码
客户端
while(1) {
printf(">"); //this isn't being outputted
fd_set rfds;
FD_ZERO(&rfds);
FD_SET(serverSocket, &rfds);
FD_SET(0, &rfds);
if(select(serverSocket+1, &rfds, NULL, NULL, NULL) < 0) {
perror("select");
exit(-1);
}
if (FD_ISSET(serverSocket, &rfds)) {
//recv data from server
}
else if (FD_ISSET(0, &rfds)) {
//read keyboard
}
}
'printf(“>”);' - >>'fprintf(stderr,“> \ n”);'这是输出。 – wildplasser 2013-02-10 00:55:10
你可以在'printf'之后用'fflush(stdout);'尝试一下吗? – Ganesh 2013-02-10 00:57:23
@wildplasser发布您的解决方案,以便我可以标记为答案。黑客的位,但我想它在这种情况下工作。除非有人有更好的选择。 – theStig 2013-02-10 01:03:16