sxz330967303 发表于 2014-7-23 23:10:22

for(y=0;y<6;y++);带分号于不带分号的差别

本帖最后由 jianhong_wu 于 2014-7-24 00:23 编辑

#include <reg52.h>
void delay (unsigned int x)
{
unsignedint   a,b;
for(a=x;a>0;a--)
   for(b=120;b>0;b--);
}
void main ()
{
while(1)
{
unsignedchar         y         ;
P1=0xfe ;// 1111 1110
for(y=0;y<6;y++);
{delay(1000);
P1<<=1;
P1=P1|0x01;
}
}
}
这个程序应该是6个流水灯,可是模拟出来的效果是8个流水灯

jianhong_wu 发表于 2014-7-23 23:26:05

本帖最后由 jianhong_wu 于 2014-7-24 00:24 编辑

鸿哥解答:把这行的for(y=0;y<6;y++);中的分号“;”去掉。

重庆-风雪 发表于 2014-7-24 16:42:17

带分号的话是不是可以理解为for循环的循环体为空?
页: [1]
查看完整版本: for(y=0;y<6;y++);带分号于不带分号的差别