考虑
#include <iostream>
int main()
{
int i = 0;
while (i < 10)
i++;
std::cout << i << endl;
}
我只是想知道,为什么这个打印出10?如果是i<10,打印的不是9吗?我感谢的任何帮助
因为当i
为9时,(i < 10)
为true
,所以while
主体运行,使i
递增1,从而将其设置为10。当然,在while
体的最后一次迭代中,i++
是一个表达式等于9,但有增加i
的副作用。
无论循环内部发生什么,
只要
i
小于10 就执行此操作
与相同
执行此操作,直到
i
大于或等于10
因此循环之后的i
的值必须(至少(为10,因为这是它停止的时候。
因为while(i < 10)
中的i一直保持在循环中,直到i等于10,我将这些值与10进行比较,所以当它达到10时,它将脱离循环,并将其打印出