Windows 中的 GCC 包括头文件

cap*_*com 2 c gcc header

我的项目位于名为 junkyard 的目录中。在垃圾场内,我有test.c和一个名为 include 的文件夹。

我的代码如下所示:

#include <my_global.h>
#include <mysql.h>

int main(int argc, char **argv)
{
  printf("MySQL client version: %s\n", mysql_get_client_info());
}
Run Code Online (Sandbox Code Playgroud)

这两个头文件位于 include 文件夹内(同样位于项目的根目录中。因此该结构的必要文件位于这样的位置:

垃圾场/test.c

垃圾场/include/mysql.h

垃圾场/include/my_global.h

请注意,我在 Windows 上使用 GCC。我无法编译该程序,并且尝试了多种方法。如何正确链接头文件?谢谢。

Vyk*_*tor 5

首先#include语法之间的区别:

  • #include <>表示包含“编译器目录”中的文件(可以通过预处理器选项-I设置)
  • #include ""意味着包含“本地目录”中的文件

如果您想包含项目中的文件,您可能应该使用:

#include "include/mysql.h"
#include "include/my_global.h"
Run Code Online (Sandbox Code Playgroud)

如果您(由于某些原因)仍想使用#include <>gcc,如下所示:

gcc -Iinclude test.c
Run Code Online (Sandbox Code Playgroud)