来人看看问题呀

2019-07-15 14:09发布

本帖最后由 qq1224745969 于 2016-5-2 16:11 编辑

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
void delay();
void main()
{
        while(1)
        {
                P1=0x00;
                uint qq=0;     *******************这里开始报错了*****************
                delay();
                P1=0x01;        //1
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //2
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //3
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //4
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //5
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //6
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //7
                delay();
                qq=_crol_(P1,1);
                P1=qq+P1;                //8
                delay();
        }
}
void delay()
{
        uint x,y;
        for(x=100;x>0;x--)
        {
                for(y=1000;y>0;y--);
        }
}
这个程序从uint qq=0;就开始报错了 是怎么回事 来人帮我看看啊

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
张大猛
1楼-- · 2019-07-17 10:53
这个就要看软件和语言啦         变量分为全局变量和局部变量    全局变量在程序开头就要定义啦 因为变量整个函数都能用到。。。。       局部变量只在某个函数用到  所以只要在要用到的函数开头定义就好啦
qq1224745969
2楼-- · 2019-07-17 13:07
张大猛 发表于 2016-5-2 16:28
这个就要看软件和语言啦         变量分为全局变量和局部变量    全局变量在程序开头就要定义啦 因为变量整个函数都能用到。。。。       局部变量只在某个函数用到  所以只要在要用到的函数开头定义就好啦

好了 Thanks
方寸斜阳
3楼-- · 2019-07-17 18:13
qq1224745969 发表于 2016-05-02 16:24
太神奇了 我把uint qq放到了while前面一行 就可以编译了&nbsp;&nbsp;但是 之前写的几个小程序声明变量都是放在while里的却可以 不是很懂啊

放循环里面的话,你每次循环都要申请一个同名变量地址
mrzhong
4楼-- · 2019-07-17 20:20
 精彩回答 2  元偷偷看……

一周热门 更多>