微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 来人看看问题呀

来人看看问题呀

时间:10-02 整理:3721RD 点击:

#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;就开始报错了 是怎么回事 来人帮我看看啊

变量qq未声明

眼瞎,看错了

我从5点看到现在 查了很多资料 没发现问题在哪 头要裂了

看不懂,呵呵呵               

顶一下啊 找找问题

多写写程序这样的问题就可以避免掉啦

并没有解决啊...

变量qq声明了 在前面

变量申明放在循环外面   一般都是在最开始申明

430支持定义可以在函数中

解决啦没有  要不你就在最开始申明变量    这样可以避免很多错误

太神奇了 我把uint qq放到了while前面一行 就可以编译了  但是 之前写的几个小程序声明变量都是放在while里的却可以 不是很懂啊

这个就要看软件和语言啦         变量分为全局变量和局部变量    全局变量在程序开头就要定义啦 因为变量整个函数都能用到。       局部变量只在某个函数用到  所以只要在要用到的函数开头定义就好啦

好了 Thanks

放循环里面的话,你每次循环都要申请一个同名变量地址

这个变量在循环里面定义了~~~相当于每一次循环都重新定义

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top