[开发工具] 请教,文件编译提示错误

[复制链接]
2851|12
 楼主| shuidi_wangdan 发表于 2013-7-18 14:59 | 显示全部楼层 |阅读模式
我自己做了一个多文件的工程(自己第一次这样做工程),遇到了一个问题编译通不过,我上传了文件,我在主函数调用其他文件的函数提示语法错误,请老师指点!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| shuidi_wangdan 发表于 2013-7-18 15:15 | 显示全部楼层
我错了,编译的时候,。没有注意到被调用函数中的void,去掉就好了,打扰大家了!谢谢!
yewuyi 发表于 2013-7-18 18:00 | 显示全部楼层
声明和调用格式不符?
 楼主| shuidi_wangdan 发表于 2013-7-19 08:05 | 显示全部楼层
yewuyi 发表于 2013-7-18 18:00
声明和调用格式不符?

调用函数的时候,函数括号里的void没有去掉,太低级的错误了。
我想请教您一个问题,一个工程中有多个文件,我写了了一个延时文件,延时函数只有一个框架,如下:
#include"delay_pic.h"
/*************************************/
/*              微秒级延时函数       */
/*************************************/
void delay_us(void)
{

}
/*************************************/
/*              毫微秒级延时函数     */
/*************************************/
void delay_ms(void)
{

}
这样可以编译通过,如果改成带有形参的函数,如下:
#include"delay_pic.h"

/*************************************/
/*              微秒级延时函数       */
/*************************************/
void delay_us(unsigned char us)
{

}
/*************************************/
/*              毫微秒级延时函数     */
/*************************************/
void delay_ms(unsigned char ms)
{

}
声明和定义格式一样,
但是编译提示错误,提示语法错误,您可以给指点一下吗?
yewuyi 发表于 2013-7-19 08:24 | 显示全部楼层
1、提示的应该是警告,而不应该是错误。
2、提示警告的原因是us,ms这两个变量因为在函数根本没用,提示你他们属于无效变量。
3、如果你确定警告不会对你的代码运行造成危害,警告是可以忽略的,编译后是可以生成HEX文件的,但提示错误时,则编译器一般是不能生成HEX文件的。
 楼主| shuidi_wangdan 发表于 2013-7-19 12:12 | 显示全部楼层
yewuyi 发表于 2013-7-19 08:24
1、提示的应该是警告,而不应该是错误。
2、提示警告的原因是us,ms这两个变量因为在函数根本没用,提示你他 ...

老师思路很条理很清晰,向你学习。只是提示语法错误,等PCB发回来调试一下吧,谢谢老师!
 楼主| shuidi_wangdan 发表于 2013-7-19 16:00 | 显示全部楼层
本帖最后由 shuidi_wangdan 于 2013-7-19 16:37 编辑
yewuyi 发表于 2013-7-19 08:24
1、提示的应该是警告,而不应该是错误。
2、提示警告的原因是us,ms这两个变量因为在函数根本没用,提示你他 ...

老师,我把多个文件头文件放在一起编译,出现错误,多个文件一起编译有什么技巧吗
yewuyi 发表于 2013-7-20 23:13 | 显示全部楼层
多文件编译的前提就是要保证不能出现重复定义。
 楼主| shuidi_wangdan 发表于 2013-7-23 13:58 | 显示全部楼层
yewuyi 发表于 2013-7-20 23:13
多文件编译的前提就是要保证不能出现重复定义。

老师,我用
typedef unsigned char uchar;
typedef unsigned int  uint;
并且用到的地方都调用这两句所在的头文件,为什么还提示语法错误?
我感觉好像不是全局定义,只是局部定义,怎样才能通知全局定义?请老师指点!!
yewuyi 发表于 2013-7-23 15:51 | 显示全部楼层
请搞清楚定义、声明、字符替代等相关的基本知识,自己可以查阅相关的C语言书籍。
mg坏坏 发表于 2013-7-24 00:10 | 显示全部楼层
长见识了 大神啊
 楼主| shuidi_wangdan 发表于 2013-7-24 08:07 | 显示全部楼层
yewuyi 发表于 2013-7-23 15:51
请搞清楚定义、声明、字符替代等相关的基本知识,自己可以查阅相关的C语言书籍。 ...

这个头文件放在main.c文件里调用uchar,uint都没有问题,但把它放到别的文件里就出错误了。感觉有点想不通为什么。
xiaoqingbin616 发表于 2013-7-28 11:57 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:奇葩满天下,不分你我他! 奋斗!https://bbs.21ic.com/static/image/smiley/chubby/17.gif[/url]

65

主题

549

帖子

3

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