【发布时间】:2022-07-19 22:22:53
【问题描述】:
#include <iostream>
using namespace std;
int main()
{
int x[45]={5,3}, y=1, z=1;
int i=45;
while (x[--i])
{
cout<<"inside"<<endl;
}
cout<<i<<endl;
}
它所做的只是跳过循环,将 i 减 1 并结束脚本。 就像为什么它永远不会进入循环?它不应该重复循环 45 次直到 i 为零吗?我不知道。
【问题讨论】:
-
数组
x的元素,索引从2到44被初始化为0。while循环的第一次迭代检查x[44] != 0是否为假。 -
您是否尝试过使用调试器检查数组中的所有值,并一次一行地运行这个程序,看看到底发生了什么?如果不是,为什么不呢?如果你这样做了,你的调试器向你展示了什么?
-
是时候使用调试器了!
-
您将
x[i]与 0 进行比较,而从您的描述来看,您似乎想将i与 0 进行比较。
标签: c++