我正在用c ++创建一个基于文本的自上而下的游戏,每次移动播放器时,都需要使用system(“ CLS”)清除整个控制台窗口,然后再次打印整个世界。这个过程确实是缓慢而低效的。我的问题是,是否有任何功能可以清除控制台窗口中的特定行,而不会影响其余文本?例如,查看代码。
谢谢:)
#include <iostream>
#include<string>
#include "windows.h"
using namespace std;
int main()
{
cout << "hello\n";
cout << "world\n";
//Output:
// hello
// world
//Wanted Output:
//
// world
system("pause");
return 0;
}
我希望在屏幕上打印文本,然后清除一行内容而不影响其余文本
答案 0 :(得分:0)
win32-API包含一个名为SetConsoleCurserPosition:https://docs.microsoft.com/en-us/windows/console/setconsolecursorposition的函数。 几年前我使用了此功能。