[英]Double buffering in the console (display)?
我正在尝试创建一个控制台乒乓游戏,但遇到了以下问题。 我有以下内容:
int main()
{
while(1)
{
clearScreen();
std::stringstream sstr;
for(int i = 0; i < 20; ++i)
{
sstr << "Mooooooo \n";
}
printf(sstr.str().c_str());
restThread(50);
}
return 0;
}
我期望的输出是Moo被写入20次并且屏幕的内容从不实际更改。 但是,它会不时闪烁。 我怀疑这是因为输出在完全绘制之前已显示在屏幕上。 有没有解决的办法? 例如,在所有字符都绘制到屏幕上之前不向用户显示任何内容?
谢谢
这里有curses / ncurses库,要求您在显示任何内容之前刷新屏幕。 就平台支持而言,它无处不在。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.