我在用keil c51编辑c程序中
在一个项目中新建了两个文件
一个是C51a.c
一个是C51b.c
我在C51b.c中include "C51a.c";
这样就没问题了
如果把C51a.c改成C51a.h这样keil C51就找不到这个文件了
找到了也加不上
请问大侠这是怎么回事啊?
include "C51a.c"; ?
——#include "C51a.h"
吧。
还有你的名字你记得改动了吗?
include 一般包含的是個定義的頭文件,
包含後要注意文件名是否正確。
.C文件也是要添加到工程里的,KEIL默认新建文件不在工程中
这个是比较郁闷的事
把两个C文件里函数都在一个H文件里声明,然后两个C函数都
包含此头文件。
并且头文件这么声明
- #ifndef _XXX_H
- #define _XXX_H
- //这里是你自己的声明
- #endif
keil中建立工程后,需要把.C的文件加入到工程中,这样.C的文件才会在工程中编译,连接
你可以这样做:
1.先把两个.c文件都加入到工程中
2.如果两个.c文件之间存在调用关系,并且两个.c文件及其头文件都在同一个目录下,则在.c文件中添加相应的.h头文件
3.如果两个.c文件之间存在调用关系,但是.h头文件并不和.c文件在同一目录下,那么除了要在.c中添加#include ".h",还要
在Option-C51中添加相应的.h文件目录
引用: 引用 3 楼 shuiyan 的回复:
.h需要加进工程(project)。
.h不需要加入工程,只要.c就可以了。我从来都不加.h的。
[quote]引用 6 楼 akcw007 的回复:
把两个C文件里函数都在一个H文件里声明,然后两个C函数都
包含此头文件。
并且头文件这么声明
C/C++ code#ifndef _XXX_H
#define _XXX_H
//这里是你自己的声明
#endif
[/Quote}
恩
在KEIL里编写C时用了incld 为什么在编译时提示 SBIT GATE=P2^0 语句语法不明确!
引用: 引用 12 楼 ZJC64649683 的回复:
在KEIL里编写C时用了incld 为什么在编译时提示 SBIT GATE=P2^0 语句语法不明确!
有时后面莫名的出现空格,或其他情况就可能出现这种情况,看下把这行删点,换个地方重手动写看看