在终端窗口上显示大输出
Posted
技术标签:
【中文标题】在终端窗口上显示大输出【英文标题】:Displaying large output on terminal window 【发布时间】:2019-12-22 07:52:57 【问题描述】:int a[10000];
for(int i=0;i<10000;i++)
a[i]=i; cout<<a[i]<<endl;
假设这是代码,在终端屏幕上我需要所有输出 (0-9999) 但最后只显示 (9704-9999)
我想查看终端窗口上的所有数字,但它删除了数据的上半部分。我想我必须更改一些设置。
【问题讨论】:
请向minimal reproducible example工作显示您正在使用的完整代码、您期望的输出以及您得到的实际输出 编辑您的问题,不要在 cmets 中发布代码 如果任何答案对您有帮助,请考虑点击绿色复选标记accept it,并且不要发表“谢谢”评论。这就是这个社区的运作方式。也花 1 分钟 tour 了解更多 【参考方案1】:增加控制台缓冲。根据您使用的终端,它会有所不同。例如,在 Windows 上,conhost.exe 是 cmd 和 PowerShell 使用的默认控制台。只需单击左上角的图标 > 属性 > 布局,然后将 Screen Buffer Size 设置为足够大的数字
但更好的解决方案是redirecting to file,因为没有人愿意在控制台上读取 10000 行,并且不能保证控制台会有无限长度或长度超过 10000 行的缓冲区。 conhost
例如仅支持最多 9999 行,因此您至少会错过您键入的命令和第一个输出行。除此之外,这通常会从历史记录中删除其他命令的输出,这是不受欢迎的
使用重定向运算符>
从命令行执行此操作
yourapp.exe >output.txt
或直接从您的代码保存到文件
【讨论】:
以上是关于在终端窗口上显示大输出的主要内容,如果未能解决你的问题,请参考以下文章