初学单片机 这句话为什么不能放在主函数内

[复制链接]
2665|4
 楼主| yexinsuso 发表于 2013-1-21 11:40 | 显示全部楼层 |阅读模式
如题,我想写一个简单的流水灯程序,给P1.0赋值,可是把sbit LED=P1^0;放在主函数内就报错,放在主函数外就正确,这是为啥啊
dirtwillfly 发表于 2013-1-21 12:56 | 显示全部楼层
指定一个端口P1的0号接脚的别名为led1,相当于申明全局变量,全局变量就应当是放在函数之外的,是C51的一个硬性的规定
starsnow 发表于 2013-1-22 14:53 | 显示全部楼层
语法规定如此,就像吃饭必须从嘴吃一样,没啥为什么的,记下就行。
panjiajun8201 发表于 2013-1-22 16:59 | 显示全部楼层
这是一个变量   ok
加油吧小鱼儿 发表于 2013-1-30 18:11 | 显示全部楼层
指定P1.0别名为led1,不是动态分配内存,如楼上说的相当于申明全局变量,全局变量就应当是放在函数之外的,而且,如果编译器支持的话,你也可以试着把它放函数里,C51比C++死板得多,很多就是一个硬性的规定,方便编译器处理,有了规范了才以少出错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

26

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部