所以我在大学里学习了一些关于 C++ 的东西,我和老师就如何将文本实际居中到输出屏幕进行了讨论。所以我的建议是使用setw
但得到字符串的长度和size
在控制台屏幕上,进行算法和 BAM,我们就有了真正居中的文本。他说屏幕尺寸是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");
将其设置为执行以确保我的尺寸符合我想要的尺寸是否有效?通读一遍,所以我不能 100% 肯定它是否真的是一个 C++ 库
You can #include <windows.h>
并打电话GetConsoleScreenBufferInfo http://msdn.microsoft.com/en-us/library/windows/desktop/ms683171.aspx。要使用它,您需要一个标准输出流的 Windows 句柄,您可以使用GetStdHandle http://msdn.microsoft.com/en-us/library/windows/desktop/ms683231.aspx.
请注意,生成的代码将是特定于 Windows 的(而您当前的代码是可移植的,因此它应该在 Linux、Mac OS、*BSD 等上运行良好)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)