C在提交之前读取stdin缓冲区

很可能这种情况是不可能的,因为我没有发现这种行为记录在任何地方,但很奇怪,如果有人有任何技巧来完成这样的事情。 在用户实际点击enter以提交数据之前,是否可以确定程序的stdin缓冲区的内容?

我正在尝试这样做,因为我已经构建了一个简单的终端聊天程序,它将消息从一个终端发送到另一个终端以便于通信。 我们遇到的问题是,由于传入的消息和传出消息一起出现在终端中,如果用户在从另一端收到消息时键入消息,则会扭曲显示并在新的结尾处附加键入的消息收到消息。 如果有办法检查缓冲区的内容并采取相应的行动会很方便,但我不确定如果没有gui类型的接口级别,这是否可行。

在此页面上搜索“kbhit.c”: http ://pwilson.net/sample.html