在C51中 这两个定义有什么区别

void delayms(unsigned char t)
{
unsigned int x;(把这里的这句话换成 unsigned int x,y;)
while(t--)
{
for(x=0;x<245;x++);
for(x=0;x<245;x++);
}
}
上面写的两种在C51中有什么区别

第1个回答  2013-11-08
你好!!
没有区别,程序还是能运行,只是你的变量 y 没有使用,编译会出现警告追问

可是我 用这两种定义写的延时程序烧到单片机学习板中,一个能正常运行,一个不能正常运行,不知道为什么

追答

能不能运行,是你下面的循环的问题

    下面这个不能循环

 for(x=0;x<245;x++);
   for(x=0;x<245;x++);

    下面这个能循环

 for(x=0;x<245;x++);   
   for(y=0;y<245;y++);

你当时是提问没有说明是循环不正常,你是问的两个定义有什么区别!

第2个回答  2013-11-08
只是多定义出来一个变量而已本回答被提问者采纳