写入控制台没有延迟

Tri*_*g3l 1 c console stdout

我正在编写一个命令行游戏,应该在4-40 FPS下工作(稍后会选择).但是,我有一个问题.使用putchar()绘制由1920个彩色字符组成的"图像"需要0.2-0.3秒,我可以看到我的图像逐行绘制.但是,例如,在Firefox中,我几乎可以在不到十分之一秒的时间内在画布上绘制64000个RGB像素.

有没有办法避免这种延迟,是控制台强制延迟,还是处理输出需要多长时间?

use*_*016 7

不要用putchar.制作一个充满你的字符的缓冲区,代表屏幕状态,并用于write将你的缓冲区一次性发送到stdout,然后刷新它.

例如: write(STDOUT_FILENO, buffer, buffer_size); fflush(stdout);