我正在学习C++相关的内容,其中有一个问题是如何将文本居中显示在输出屏幕上。我的建议是使用setw
函数来获取字符串长度和控制台屏幕的size
,然后进行算法运算,就可以实现真正的文本居中了。但是老师说屏幕大小是80
,但是屏幕大小可以改变,如果用户开始调整大小,那么无论如何都无法使输出居中。我有一个小问题,如何获取控制台屏幕的实际大小呢?
#include <iostream>
#include <string>
using namespace std;
const int SCR_SIZE = 80;//some way of telling size
int main(){
string randomText = "Hello User!";
cout << setw( ( (80 / 2) + (randomText.length() / 2 ) ) )
<< randomText
<< endl;
return 0;
}
我找到了一些资料,发现这部分内容。
#include <cstdlib>
system("MODE CON COLS=25 LINES=22");
如果我设置执行以确保我的大小是我想要的,那会起作用吗?只是阅读它,所以我不确定它是否实际上是一个c++库。