gpt4 book ai didi

c - 是否可以在有限的时间内显示 printf() 语句?

转载 作者:太空宇宙 更新时间:2023-11-04 01:45:59 26 4
gpt4 key购买 nike

我是编码的初学者,我被指示编写一个基于文本的游戏,所以我想弄清楚是否可以只用 C 语言在有限的时间内打印出一个语句 是否也可以让他们在有限的时间内输入答案?问题是,如果我打印出一些东西,它们可能会向上滚动,而这正是我要避免的。如果可能,请务必在下面输入我可能会用作引用的代码或资源。谢谢。

最佳答案

默认情况下,终端设计为在缓冲区中逐渐发出越来越多的文本行。文本被添加到末尾,并且前面的行仍然可见(达到终端配置的缓冲区大小的限制)。

通过改变终端模式可以获得更多的“GUI”感觉,这通常是使用像 cursesncurses 这样的库来完成的。这将允许您在窗口的特定部分显示文本,并删除所述文本。程序结束后,诅咒“重置”终端,使整个“GUI”消失(尽管某些终端在向上滚动页面时仍会向用户显示 GUI 的“最终状态”) .

代码示例是关于如何使用 ncurses 的教程,对于这种媒介来说有点过于宽泛,但并不难找到。

由于您在初学者类(class)中,很可能会鼓励您做下一个最好的事情,即:

  1. 通过流式传输回车然后用空格或替换文本覆盖旧行来“伪装”消失的文本(对此效果的支持各不相同),或者
  2. 通过流式退格字符“伪造”消失的文本(对此效果的支持各不相同),或
  3. 根本不做,只是继续下一行

在上述所有情况下,除了 #3 之外,实现“计时器”的责任应由您承担。

关于c - 是否可以在有限的时间内显示 printf() 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53742745/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com