c头文件的问题
a.c
main()
{
p();
}
b.c
p()
{
}
编译a.c和b.c后运行a正常。那么头文件在这里如何使用,头文件的作用如何体现?谢谢!
[解决办法]
头文件是定义,.c文件是实现,google分离编译~
[解决办法]
如果b是一个头文件, 那么他的后缀名应该是以h作为后缀的。
如果b.h是和a.c在同一个目录下的话, 那么他就应该在开头写上这样一个语句:#include "b.h",不能写成#include <b.h>
[解决办法]
头文件可以用来帮助提供接口,隐藏实现的细节,减小单个的文件体积,方便多人合作实现一个项目
如Kenmark所说“头文件是定义,.c文件是实现”
这里可以
b.h
#ifndef B_INCLUDED
#define B_INCLUDED
extern p();//当然这样的定义是有问题的,P()函数没有返回类型
#endif
b.c
#include "b.h"
p()
{
//实现
}
a.c
#include "b.h"
main()
{
p();
}
[解决办法]
.h就是省得你把一堆东西都写到每个.c文件里了,写一次之后就可以被多个.c文件使用。
[解决办法]
你这里的东西少,不需要头文件了。.h是把所有东西拿来先申明一下, 其它任何时候要用哪些东西了,就#include ".h"