如何清除控制台窗口中的特定行

时间:2019-01-13 18:00:59

标签: c++ windows

我正在用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;
}

我希望在屏幕上打印文本,然后清除一行内容而不影响其余文本

1 个答案:

答案 0 :(得分:0)

win32-API包含一个名为SetConsoleCurserPosition:https://docs.microsoft.com/en-us/windows/console/setconsolecursorposition的函数。 几年前我使用了此功能。