我正在尝试向使用ncurses创建的终端应用程序添加一些细节。
应用程序类似于超时测验...如果用户浪费太多时间,则会发生超时并清除屏幕。
现在问题是:如何在超时前显示用户插入的文本,如果需要,可以编辑/重新编辑?
示例:
问:你觉得开心吗? (正确答案是的,我感到高兴)答:是的,我是(TIMEOUT,清洁屏幕,问题再次打印,但没有打印出“是的,我是”)。
我不知道是否有可能将其添加到stdin缓冲区或行缓冲区......
...思想
非常感谢
答案 0 :(得分:0)
你可以这样做:
nodelay(stdscr, TRUE);
getch()
检查是否按下了某个键并检查它是否返回值> 0
usleep()
睡几微秒(没有忙碌等待!)并检查超时;如果超时发生,请处理