函数定义可以写在.h资料里吗
函数定义可以写在.h文件里吗?原来一直用C++,以及集成开发环境,这些问题都不用考虑。测试代码的时候经常是只
函数定义可以写在.h文件里吗?
原来一直用C++,以及集成开发环境,这些问题都不用考虑。测试代码的时候经常是只新建一个.h文件,然后声明个类,把测试代码直接写在类里 相当于inline了。
现在学linux C。把函数声明和定义直接写在.h文件里
test.h
#ifndef _TEST
#define _TEST
void test()
{
....
}
#endif
这样写,main函数引用#include "test.h",可以吗?
如果可以,makefile文件要怎么写啊?
[解决办法]当然可以。makefile不需要有什么不同。
不过你makefile中,引用到这个函数的模块最好将这个.h文件写到它的依赖中去,这样当这个.h修改后,相关的模块才会重新编译。
[解决办法]gch是头文件编译后产生的文件,你可以不编译这个头文件,直接编译用到它的模块就行
你的makefile可以这么写,
比如a.c include了这个test.h
那么
a.o: a.c test.h
gcc -c a.c test.h -o a.o
即可