for(;;x++);为什么是无限循环的?为什么for(y=0;x=1;++1) 为什么是无限循环
两个都解释啊 谢谢
for(;;x++);为什么是无限循环的?为什么for(y=0;x=1;++1) 为什么是无限循环
两个都解释啊 谢谢
for()循环中3个判断都不可以少。
例1是。第一个是空的。第二个是做判断的。它也是空的
如果公共变量int x=0;
x不管等于什么~中间的都是判断TRUE。所以继续死循环
第二个叶是一样的
y=0;和X=1么关联
如果FOR(X=0;X=1;++1)
直接就循环一次了。。
所以中间那个判断无效。。所以死循环
那是没有终止条件所以,他不知道怎么结束循环
所以了是死循环了
这下该明白了吧
两个分号之间的表达式是一个条件判断语句
在for(;;x++);中根本没有条件语句,如何结束?
而在for(y=0;x=1;++1) x=1虽然是个条件语句,但是x的值不确定,之前如果没有声明的话那应该编译是不能通过的,若有声明并初始化,分两种情况:1、x=1;本循环语句根本执行不到。2、x!=1;本循环语句是个死循环来的。
还有++1都的表达式不规范的,最好是改成++y或者是y++(还有你该不会是以为后面的++1是实现x的自增吧?不是的哦~~~若真要这样,你就应该写成++x,不过我们的使用一般都是x++--我就不知你要实现什么功能了,呵呵~)
最后我觉得整个语句中的变量最好一致,否则实现不了什么特殊效果呢,呵呵~
for(;;x++)无限定条件;for(y=0;x=1;++1)中X永远等于1