打印

编译程序时出错问题

[复制链接]
987|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dingy|  楼主 | 2014-2-15 14:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#ifndef _DS1302_H_
#define _DS1302_H_
extern uchar str1[]=" - - Week: " ;
extern uchar str2[]="Time: " ;
extern void write_str(uchar addr,uchar *p);
#endif
keil显示:
创建目标 '目标 1'
PA51汇编 STARTUP.A51 ...
编译 main.c ...
C.H\DS1302.H(4): 错误 C129: missing ';' before 'str1'
编译 lcd1602.c ...
编译 key.c ...
编译 beep.c ...
编译 display.c ...
编译 ds1302.c ...
目标未产生
沙发
pengf| | 2014-2-15 14:29 | 只看该作者
将 #endif放到extern uchar 之前

使用特权

评论回复
板凳
renyaq| | 2014-2-15 14:30 | 只看该作者
将 #endif放到extern uchar 之前

使用特权

评论回复
地板
supernan| | 2014-2-15 14:30 | 只看该作者
uchar这里 好像不行吧, unsigned char  这里好像没宏定义

使用特权

评论回复
5
栩栩如生| | 2014-2-15 14:31 | 只看该作者
在 .h 文件里面 声明外部变量,用
extern uchar str1[];

在.c文件里面,定义变量用:
uchar str1[]="  -  -   Week:  " ;

使用特权

评论回复
6
zwll| | 2014-2-15 14:32 | 只看该作者
是啊,用uchar之前必须先包含声明uchar的头文件。

使用特权

评论回复
7
chuxh| | 2014-2-15 14:32 | 只看该作者
h头文件定义了uchar,有可能是这个原因引起的

使用特权

评论回复
8
juventus9554| | 2014-2-15 14:33 | 只看该作者
是啊。。。

使用特权

评论回复
9
dingy|  楼主 | 2014-2-15 14:34 | 只看该作者
好的,我再试试

使用特权

评论回复
10
dingy|  楼主 | 2014-2-15 14:34 | 只看该作者
先结贴啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

745

主题

10920

帖子

6

粉丝