刚刚不小心 for(i=0;i<3;i++); 多了个;
可是编译时竟然没报错,只是出了错误的答案,
现在知道了,谢啦~~~~~~
----------------解决方案--------------------------------------------------------
for(i=0;i<3;i++); //这里多个分号
一个笔误也能让这么多人来回答...都真闲啊
----------------解决方案--------------------------------------------------------
..................................
----------------解决方案--------------------------------------------------------
以下是引用摄政王:多尔滚在2006-7-16 16:14:20的发言:
b=a[i--]; ===> i = 3
c=a[i]; ====> i = 2
b=a[i--]; ===> i = 3
c=a[i]; ====> i = 2
i=3??不对吧
----------------解决方案--------------------------------------------------------
right
----------------解决方案--------------------------------------------------------
没错。要结束后才是i=2。自减自加
如果是i--就是当i--存在的那行语句运行完后再减的!
----------------解决方案--------------------------------------------------------
为什么其实是错的,编译时却不报错啊?
----------------解决方案--------------------------------------------------------
for(i=0;i<3;i++);
===>
for(i=0;i<3;i++)
{
;
}
----------------解决方案--------------------------------------------------------
以下是引用摄政王:多尔滚在2006-7-16 16:27:26的发言:
for(i=0;i<3;i++);
===>
for(i=0;i<3;i++)
{
;
}
for(i=0;i<3;i++);
===>
for(i=0;i<3;i++)
{
;
}
这我知道了呀,for 后面多了一个分号,
我想问的是在 for(i=0;i<3;i++); 编译时为什么不报错啊?只是出了错误的答案
是编译器不好吗?还是本来就检查不出来的啊?
----------------解决方案--------------------------------------------------------
for(i=0;i<3;i++);
===>
right statement
----------------解决方案--------------------------------------------------------