C语言for(表达式1,表达式2,表达式3)语句 中表达式2为空语句则变成死循环,那么这里的空语句为真还是假

如题所述

这里“表达式2为空语句则变成死循环”这样说不完整正确。
例如下面这个循环:
int i=0;
for(i=0;;i++)
{
if(i>10) break;
printf("%d",i);
}
这就不是死循环,这里将for的第二个表达式的判断移至循环体内,借助break来结束循环。

这里的空语句可以理解为永真,因为没有进行任何的判断,所以可以这样理解。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-17
首先for语句中各表达式是通过分号隔开的,通过表达式1确定循环初值,表达式2确定判断循环条件,表达式3可用于设置增值;现表达式2为空语句,表示不做循环判断直接执行循环体内语句,也可以认为是表达式2默认为真。
第2个回答  2011-10-17
你都说了变成死循环了。那你告诉我是真还是假呢。。
肯定只有是真,for循环里面的内容才会执行啊。
第3个回答  2011-10-17
纠正一个错语: for(表达式1; 表达式2; 表达式3),里面是分号,不是逗号。
第4个回答  2011-10-17
你就好像问,这里没有数,那么这个没有的数是大于零,还是不大于零。
相似回答