我正在制作一个名为int
的{{1}}数组,但是score
循环无法正常工作(我认为循环没有停止)。
我尝试删除for
,但恢复正常。
cin >> score[i]
我希望输出array<int, 9> score;
cout << "Score graphics from 1 to ten\n\n";
for(int i = 0; i <= score.size(); i++){
cout << "The number of people who get " << i + 1 << " : ";
cin >> score[i];
}
到The number of people who get 1 : (input)
答案 0 :(得分:5)
此:
for(int i = 0; i <= score.size(); i++){
应该是:
for(int i = 0; i < score.size(); i++){
由于score.size()
将返回9
,但是数组的最后一个索引是8
。
使用原始代码,在访问索引太大的数组时,循环的最后一次运行只会调用一些未定义的行为:
cin >> score[9]; // score array only goes from 0 to 8!!