標籤:

我寫的C++程序為什麼不能實現完整輸出1-1000?


大概是題主用的命令行的緩衝行數配置的問題…

所以題主的代碼是這樣的對不對?

#include &
using namespace std;

int main()
{
int z, m;
z = 1;
while (z &<= 1000) { m = z; cout &<&< m &<&< endl; z++; } return 0; }

這個是可以輸出1到1000的無誤。

題主說只能看到703到1000,大概是因為您的命令行(Windows的話cmd)配置的緩衝行數太少了,只能看到這麼多行。

有幾種解決辦法:

1、把配置調大一點。給題主看Windows XP上cmd的配置方法:https://technet.microsoft.com/en-us/library/bb491037.aspx

2、把輸出重定向到文件。例如原本是xx.exe這樣執行,要重定向的話這樣:xx.exe &> out.txt ,就把標準輸出寫到out.txt文件里了。


其實你要是在每一行輸出之後加上一個 sleep

你會看到實際上是最早輸出的行更新的行(300 行後的)滾掉了


703-1000,就是R大說的,只是看到了最後,如果輸出佔滿了整個窗口,還只有這麼點話,按這個http://m.myexception.cn/windows7/1435124.html設置下,然後拖動下cmd右邊的滾動條就能看到全部了。


贊。

其實慚愧,以題主對待問題的態度,一定會很快學有所成的^O^

看到有答主說看到題目嚇了一大跳……

老實說我也是。。

所以,,題主能不能把問題改成「我的C++程序不能……」


你這是在CMD里看不到吧

用命令行執行,在程序末尾加上&>output.txt,執行完之後打開那個文本文件就能看到輸出結果了


題主cmd配置的緩衝行數應該是只有200多吧,前面輸出了的都被刷掉了,所以看起來只是輸出了703~1000。

這個問題我大一的時候也糾結了一小會兒…然後我輸出到文件試了一下,就明白根本不是代碼的問題了。


修改CMD屬性就好了。

緩衝區大小直接改成100000(我隨手打的一個值,別較真)


命令行有問題,能顯示的太少!


應該是輸出緩衝區的問題吧


固定298個數么?


你這也太小白了。多用百度,慎用知乎。谷歌最好,不行用必應。 @vczh 我猜你最喜歡用必應對不對


推薦閱讀:

一個沒有身體的踢球小白,怎麼能從邊後衛再踢到中場和邊鋒?
用Rhino建這樣的曲面的上大下小的浴缸用什麼方法啊?

TAG:小白 | CC |