[英]C Programming increment & decrement
for(i=0;i++<10;)
{
printf("%d\n",i);
}
为什么要打印 1 到 10?
我知道后增量发生在循环之后,为什么它不显示 0? 为什么它显示10?
我认为你正在寻找的是做do..while
i=0;
do{
printf("%d\n",i);
}while(i++<10);
让我们标记循环的元素:
for(/* 1 */ i=0; /* 2 */ i++<10; /* 4 */)
{
/* 3 */ printf("%d\n",i);
}
事情是这样发展的:
i
被初始化为0
;i++
的结果与10
进行比较; 作为这个表达式的副作用, i
增加了1
;i
的更新值; 重复步骤 2 到 4,直到i++ < 10
计算结果为 false。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.