我寫的C++程序為什麼不能實現完整輸出1-1000?
01-13
大概是題主用的命令行的緩衝行數配置的問題…
所以題主的代碼是這樣的對不對?
#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.aspx2、把輸出重定向到文件。例如原本是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 我猜你最喜歡用必應對不對
推薦閱讀: