#include“头文件“的相对路径是相对谁的路径????

#include“头文件“的相对路径是相对谁的路径????,第1张

vc中使用#include命令包含头文件所搜寻的路径,vc中的三种路径:

1、系统路径

系统路径在vc中是"Tools->Options->Directories"中"Includefiles"指定的路径。

打开此对话框会发现默认有这几条路径:

C:\ProgramFiles\MicrosoftVisualStudio\VC98\INCLUDE

C:\ProgramFiles\MicrosoftVisualStudio\VC98\MFC\INCLUDE

C:\ProgramFiles\MicrosoftVisualStudio\VC98\ATL\INCLUDE

2、当前路径

当前路径是指vc工程中工程文件所在的路径,即.dsw文件所在路径。

3、附加路径

附加路径是指在"Project->Settings->C/C++->Preprocessor->Additionalincludedirectories"中指定的路径。

此路径默认为空,我们可以在此处填写需要路径,比如:在此处填入"C:\123\",(不要引号),那么附加路径就会变成"C:\123\"。

上面的1,3路径,我们均可以自己编辑。在编辑过程中,可以使用绝对路径,也可以使用相对路径。

比如,在添加系统路径时,可以这样填写:

.\SRC\ 这样写表示,当前目录中的SRC文件夹;

..\SRC\ 这样写表示,当前目录的上一层目录中SRC文件夹;

...\SRC\这样写表示,当前目录下 ..\SRC\\路径,当然这种写法已经和第一种重叠了。

这种相对路径的写法,vc会自动帮我们转化为绝对路径。

在添加附加路径时,其相对路径的写法和系统路径是一致的。

在vc中使用#include命令,有三种形式:

1#include<file.h>

vc执行这条指令时,它会在系统目录中去查找file.h文件。

在此条码命令中,vc不会去当前路径和附加路径中查找文件。

2#include"file.h"

vc执行这条指令时,它首先会搜索附加路径,如果没有则会搜索系统路径,如果还没有则会去搜索当前路径。

3、#include"directory\file.h"

vc执行这条指令时,它会去指定的路径去查找文件,如果没找到,它不会继续查找。

#include”xxx.h”

把include文件夹(里面是某个库的头文件)拷到自己的项目中,添加头文件时需要使用#include”include\xxx.h”方式,如果打算使用#include”xxx.h”方式。

解决方法:

项目属性->C++>常规->附加包含目录:$(ProjectDir)\include

添加类库,在项目属性->链接器>常规->附加库目录:$(ProjectDir)\lib

其中:\$(ProjectDir)代表你的项目所在目录:x:\?\projectname

所有宏定义可以在“附加包含目录”或者“附加库目录”编辑界面,点击宏“(M)>>”查看

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include<文件名>

2、#include"文件名"

如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:

#include&ltmath.h&gt//一些数学函数的原型,以及相关的类型和宏

如果需要包含针对程序所开发的源文件,则应该使用第二种格式。

采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。

C++标准库头文件,不同的编译器默认路径不相同。

Vc6.0一般在安装目录下的\VC98\INCLUDE目录,比如C:\Program Files (x86)\Microsoft Visual Studio\VC98\INCLUDE。

Vs一般在位于$VSPATH\VC\include路径下面。

gcc一般默认在 /usr/include目录下

自定义头文件文件要么和源代码文件放在同一处,要么在编译的时候指明自定义头文件路径,这样编译器才能找到头文件,才能编译通过。

另外,一些头文件需要在工程里面添加与头文件相对应的DLL动态链接库的支持才能用,因为头文件大多都只是定义,具体地实现是在cpp中,但还有一些像windows自带的头文件,他们的实现都是在DLL里面,你必须添加对这些DLL的支持才能使用这个头文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12099914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存