哪位高手帮我看看这个程序那里出错了,帮帮忙啊

2019-07-16 01:48发布

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit wela=P2^7;
sbit dula=P2^6;
sbit d1=P1^0;
uint code table[]={
        0x3f,0x06,0x5b,0x4f,
        0x66,0x6d,0x7d,0x07,
        0x7f,0x6f,0x77,0x7c,
        0x39,0x5e,0x79,0x71,0xff,0xff};

uint code table1[]={
        0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
void delay(uint z);
void main()
{
        EA=1;
        EX0=1;

       
        int i,num;
        while(1)
        {       
                num=0;
                do
                {
                        for(i=0;i<6;i++)
                        {
                                wela=1;
                                P0=table1[i];
                                wela=0;
                                dula=1;
                                P0=table[num];
                                dula=0;
                                delay(1000);
                                num++;
                                d1=1;
                        }
                }
                while(num<16);
        }

               
}
void delay(uint z)
{
        int x,y;
        for(x=z;x>0;x--)
                for(y=100;y>0;y--);

}
void exter0() interrupt 0
{
        d1=0;
        delay(1000);       
}

错误原因:
ZDSY_1.C(22): error C141: syntax error near 'int'
ZDSY_1.C(22): error C202: 'i': undefined identifier
ZDSY_1.C(25): error C202: 'num': undefined identifier
ZDSY_1.C(28): error C202: 'i': undefined identifier
ZDSY_1.C(31): error C202: 'i': undefined identifier
ZDSY_1.C(34): error C202: 'num': undefined identifier
ZDSY_1.C(37): error C202: 'num': undefined identifier
ZDSY_1.C(41): error C202: 'num': undefined identifier



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
qflz1992
1楼-- · 2019-07-16 15:47
 精彩回答 2  元偷偷看……
qflz1992
2楼-- · 2019-07-16 19:51
yuying2015 发表于 2013-3-28 16:57
没什么问题,把int i,num;放在while循环里就好了,跟他们说的用int还是char没关系 ...

我把int i,num;放到void main()前面就可以了。。。但不知道为什么。。。
yuying2015
3楼-- · 2019-07-17 00:12
就这样,循环里用到的-新-变量在循环里设定,不然后面只在循环里执行,它不知道你定义了,它只在while里运行
捕获ssss.GIF
qflz1992
4楼-- · 2019-07-17 00:58
yuying2015 发表于 2013-3-28 16:57
没什么问题,把int i,num;放在while循环里就好了,跟他们说的用int还是char没关系 ...

我把int放到了while循环里也可以,但为什么放到void main下就不行呢?
yuying2015
5楼-- · 2019-07-17 06:55
这个涉及到局部变量和全局变量
小鱼炒辣椒
6楼-- · 2019-07-17 09:28
 精彩回答 2  元偷偷看……

一周热门 更多>