2010-11-16 46 views
-2

这段代码打印,但我需要看到滚动所有行打印输出屏999线

#include "iostream" 
#include "conio.h" 
using namespace std; 

void main() 
{ 
    for (int k=1 ;k<1000;k++) 
     cout<<k<<"\n"; 
    getch(); 

} 

我在Windows写入7

当编译,看看导致只有300行我看到701-999 但我需要查看所有行1-999

+0

命名空间和流建议它不是C但C++的问题? – Vladimir 2010-11-16 13:18:36

+0

你还期望输出会如何? – Naveen 2010-11-16 13:18:57

+0

@Vladimir - 我同意 - 更改标签 – 2010-11-16 13:19:14

回答

1

滚动输出是控制台窗口本身的一个功能。如果您的控制台窗口不支持滚动,除非您自己重新实现控制台窗口,否则不会使用代码获取它。

除此之外,您的代码正确写出999行。然而,我会用endl替换"\n"

4

如果你是在Linux上:

g++ filename.cpp -o filename.out 
./filename.out | less 

我不使用Windows,所以如果有一个相当于我不能说。

+0

Windows的粗略等价物将会是'more'。但这两种解决方案都是针对操作系统的 – Vlad 2010-11-16 13:23:40

0

编译它应该做的伎俩后键入

./yourprogram | more 

。没有其他方法可以做到这一点,除非您以编程方式暂停输出。您还可以使用

system("pause"); 

代码中的每50行左右的时间,但是这是not recommended和工作只能在Windows/DOS。

+0

你的建议是{DOS,Windows}特定的 – Vlad 2010-11-16 13:22:29

+0

@Vlad:谢谢你指出。 – darioo 2010-11-16 13:23:54

1

只需将输出传输到文件并使用具有分页功能的程序(例如less)查看文件。 ./a.out > test.txt; less test.txt

0

除了misha的回答,您还可以在Windows终端中使用更多功能。

MyProgram | more 

更多也是一个Unix命令,但我认为DOS的更多作品更像是Unix的少(它可以让你去了,以及向下thorugh输出)IIRC。

+0

Windows更多只能让你前进,而不是后退。在这种情况下,更多的是少的。 – Ferruccio 2010-11-16 13:38:35