找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

明明有分号,C语言编译的时候提示缺少分号

查看数: 6852 | 评论数: 14 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-4-29 22:58

正文摘要:

救救孩子吧,哭了,请指教一下,万分感谢!

回复

ID:741674 发表于 2020-4-30 14:27
uchar宏定义错误
ID:539117 发表于 2020-4-30 14:21
没有定义,应该这样定义uchar #define uchar unsigned char ,同理uint也这样定义使用
ID:606493 发表于 2020-4-30 11:29
宏定义有问题,应该是#define uchar unsigned char,这样uchar readkey就相当于unsigned char readkey,定义的是一个无符号字符类型,但是你的宏定义是#define uchar unsigned char THO TLO TH1 TLI,这样uchar readkey就相当于unsigned char THO TLO TH1 TLI readkey,此时定义方式有问题,报错
ID:452950 发表于 2020-4-30 10:58
#define uchar unsigned char TH0 TL0 TH1 TL1
改成
#define uchar unsigned char
ID:405033 发表于 2020-4-30 10:19
本帖最后由 疯子本人 于 2020-5-4 22:38 编辑

把那几行注释一下,看一下是否是中文输入,前面的uchar没定义好
ID:46065 发表于 2020-4-30 08:51
很可能是中文的分号,一模一样的。
ID:597048 发表于 2020-4-30 08:45
宏定义就是把uchar后面的都定义过来了  
ID:597048 发表于 2020-4-30 08:44
第二行宏定义是什么  把char后面的都去掉
ID:592807 发表于 2020-4-30 08:43
宏定义出错了
因为你的宏定义是#define uchar unsigned char TH0 TH1 TH2 TL0 TL1
所以当你定义uchar radkey;时等价于(unsigned char TH0 TH1 TH2 TL0 TL1) readkey;
ID:462827 发表于 2020-4-30 08:39
你的代码乱拷贝来的吧,关注点不对了,你没看到报错信息说头文件打不开么,你的电脑中可能没有那样的头文件,试一下 reg52.h 也好呀。
第二行的宏定义也错了,后面跟了太长的尾巴。

第一行第二行就已是错的,可你却什么不知道。
ID:267719 发表于 2020-4-30 08:36
第二行宏定义和变量声明怎么一行写了?
另外看编译是没找到at89x51.h
这个头文件声明了特殊寄存器TH0,TL0,TH1,TL1。不需要你第二行的重复声明。
有了头文件,删掉第二行,第二个错误就不存在了。
ID:70069 发表于 2020-4-30 08:04
#define uchar unsigned char TH0 TL0 TH1 TL1
这里是几个意思
ID:235200 发表于 2020-4-30 08:03
把第1个错误改正后也许就没有了,头文件改为regx52.h
ID:423511 发表于 2020-4-30 07:54
第十一行的x和temp之间是不是少个下划线。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表