c - 函数和头文件 (ansi c)

标签 c macros header

这是求职面试中的一个问题。假设我们有“a.c”源文件,其中包含一些函数和“a.h”作为其头文件。我们还有调用该函数的 main.c 文件。现在假设我们有“a.h”和“a.o”(目标文件)和a.c不可用。我们现在如何调用这个函数? (我有一个提示,我们需要使用函数指针。另一个提示是使用预编译器指令(例如#define 和#ifndef)来执行此操作)。 另外我想知道在 .h 文件中我们如何知道我们是否正确链接到源文件? 谢谢你

最佳答案

只需从 main.c 中包含 a.h,您就可以使用在 a.h 中声明的函数。然后用与 a.o 相同的编译器版本编译它:

gcc -c main.c
gcc main.o a.o

关于c - 函数和头文件 (ansi c),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3533766/

相关文章:

c - int 指针指向 void 指针,以某种方式指向 char 数组?

php - JavaScript 或 PHP 中的宏?

c++ - 模板/预处理器 hackery 可以用于支持参数列表中间的可变参数吗?

c++ - 在 C++ 中重新定义模板 <class T>

python - 如何获取c头文件中定义的列表?

c - 以下哪些后自增和预自增运算符的组合在 C 语言中具有未定义的行为?

必须仅包含在调试版本中的源文件的条件编译

c - C 中的逻辑 &&

c++ - 如何创建一个按 C++ 键的程序?

c - #include <高兴/高兴.h> : No such file or directory (even though source and header are in the same directory)