【发布时间】:2020-05-02 02:42:02
【问题描述】:
我正在尝试在 linux 上用 C 编写一个小控制台聊天程序。
到目前为止,我的编码方式是两个聊天伙伴只能交替发送/接收,因为这些函数调用默认是阻塞的。
现在我想修改那个程序,使两者能够同时发送和接收。
我发现的问题是,一旦你向终端输入了一些输入,我不知道如何输出接收到的消息,而不会弄乱终端的当前输入行。
如果有办法删除当前输入行,您可以暂时保存该行,打印新消息并将输入行放回原处。
但是,我无法在互联网上找到解决此问题的方法。
是否可以删除当前输入行,如果没有,我还能如何实现我想要的?
【问题讨论】:
-
你有没有试过查看terminal escapes?
-
我认为这是
ncurses所做的事情,但我自己从未使用过它,我无法确定。 -
@Zelnes 谢谢,这正是我想要的
标签: c terminal chat stdout stdin