C 在便携式压缩文件夹中包含一个.h文件

C 在便携式压缩文件夹中包含一个.h文件,c,c-preprocessor,include-path,C,C Preprocessor,Include Path,我有个问题 我当前的项目在开头有一个标题。我是这样写的: #include <C:/Data/Programming/Project_2018/Files/header.h> #包括 事实证明这是一个问题,因为我无法将它移植到另一台计算机上。我的问题是,我是否可以对#include进行某种更改,以强制编译器在使用它的c文件所在的文件夹中查找这个header.h #include <.../Files/header.h> #包括 与。。。表示包含main.c文件的文

我有个问题

我当前的项目在开头有一个标题。我是这样写的:

#include <C:/Data/Programming/Project_2018/Files/header.h>
#包括
事实证明这是一个问题,因为我无法将它移植到另一台计算机上。我的问题是,我是否可以对#include进行某种更改,以强制编译器在使用它的c文件所在的文件夹中查找这个header.h

#include <.../Files/header.h>
#包括
与。。。表示包含main.c文件的文件夹

这个项目的最终目的地是一个zip文件夹,它将被交付到任何计算机上使用,所以我需要这种便携性


有什么线索吗

是的,您可以在C中使用相对包含。如果您是从包含
main.C
的目录中编译,
#include“header.h”
将适用于您。请注意双引号,它告诉编译器查看源代码树,而不是包含路径

如果目录结构如下所示:

.../files/
.../files/main.c
.../files/include/header.h
然后您需要
#包括“include/header.h”
。您也可以向上移动树,因此

.../files/src/main.c
.../files/include/header.h
您可以
#include“./include/header.h”
。路径是unix-y,在unix land中,
是父目录


可能也是相关的。

是的,您可以在C中使用相对包含。如果您是从包含
main.C
的目录中编译,
\include“header.h”
将适用于您。请注意双引号,它告诉编译器查看源代码树,而不是包含路径

如果目录结构如下所示:

.../files/
.../files/main.c
.../files/include/header.h
然后您需要
#包括“include/header.h”
。您也可以向上移动树,因此

.../files/src/main.c
.../files/include/header.h
您可以
#include“./include/header.h”
。路径是unix-y,在unix land中,
是父目录

也可能相关。

相关:相关: