【发布时间】:2018-04-16 13:37:58
【问题描述】:
我想通过只包含头文件而不使用编译库来编写一个可以快速访问的 C 库。为此,我将代码直接包含在头文件中。
头文件包含:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#ifndef INC_TEST_H_
#define INC_TEST_H_
void test(){
printf("hello\n");
}
#endif
我的程序无法编译,因为我对函数 test() 有多个引用。如果我的标头有正确的源文件,它可以正常工作。
是否可以通过在 C 应用程序中包含代码来仅使用头文件?
【问题讨论】:
-
访问不会更快,因为你已经用C编译了头文件。在所有情况下,都必须进行函数调用。
-
是的,但与库中的函数调用相反,代码本身的函数调用可以由编译器“优化”(内联,也许还有一些我不知道的东西)。
-
@Tom's,我同意,谢谢您的意见。
标签: c compilation header