正如您所看到的,在此代码中,我只是尝试打印0到m。香港专业教育学院使用“m”作为一个变量。(点击“n”,主要是“m”在这里)如果我输入m = 5(我会键入4键输入“n”但是忽略了这一点, “m”将是5)。 所以代码将打印0 1 2 3 4 5。我面临的问题是,只有当m为297或更小时,才能完美地看到0到m数。当我输入m超过297时,例如500。我只能看到203 - 500的数字。为什么我没有看到0 - 500?
#include <bits/stdc++.h>
using namespace std;
int main() {
long n, m;
cin >> n;
m = n + 1;
vector<long> v(0);
for (long i = 0; i < m; ++i) {
v.push_back(i);
}
for (long j = 0; j < m; ++j) {
cout << (v.at(j)) << endl;
}
return 0;
}
答案 0 :(得分:4)
这打印[0,500]对我来说很好,所以它可能是一个回滚限制。如果您正在使用终端,请在终端上Check the settings。
如果您使用类似unix的系统,可以使用wc
命令计算打印的行数并自行确认:
$ echo "500" | ./a.out | wc -l
501
您也可以将输出发送到less
,这样您就可以滚动它了
$ echo "500" | ./a.out | less
答案 1 :(得分:1)
因为您已将终端配置为仅显示最近的298行。
将其配置为显示更多所谓的&#34;回滚&#34;。