这种做法没有问题,你的理解正好是反的。你有这种想法可能被是教科书误导了。
事实上这是一种很经典的做法,把公共的声明、宏定义放在公共的头文件中,然后让所有要使用这些声明、宏定义的c文件都包含这个公共的头文件。
最后提醒你注意,不要在头文件中放可以产生空间占用的语句,代码和变量定义都不行。如果以后组织头文件的过程中出问题,可以回过头来看看有没有这个问题。
列出的错误是因为链接程序找不到foo这个模块,把三个c文件组织成项目,并设置好包含路径,再试试。
这样写是决对可以的。可能是你没有添加mult.c,add.c到工程。
还有FOO。H这样写。
//foo.h
#ifndef FOO_H
#define FOO_H
#endif
int add (int a, int b);
int mult (int a, int b);
可以实现。在xxx.c文件中直接#include“XX.h”,就可以了
将.h文件包含就可以了
h调用c文件的时候,会有重定义的