解决报错的C1083: 无法打开包括文件的问题
2013-08-01 11:03
387 查看
不同文件夹下包含头文件的方法,同时可以解决报错的C1083: 无法打开包括文件的问题。
本文主要介绍了如何不同文件夹下使用预处理器指示符#include。
假设我们有如下一个工程,其中包含了几个源代码文件和头文件。其中main.c是主源代码文件,里面包含main函数。
在base中包含:func3.h,func3.c,文件夹main和文件夹func4
在main中包含:main.c,func1.h,func1.c和文件夹func2。
在func2中包含:func2.h和func2.c
在func4中包含:func4.h和func4.c
在main中包含头文件func1.h:#include
"func1.h"
这里main.c和func1.h在同一个文件下。
在main中包含头文件func2.h:#include
"func2\func2.h"
这里main.c和func2.h不在在同一个文件下,但文件夹func2和main.c同级。"func2\func2.h"表示main.c这一级func2文件夹下的func2.h头文件。
在main中包含头文件func3.h:#include
"..\func3.h"
这里main.c和func3.h不在在同一个文件下,但文件夹main和func3.h同级。"..\func3.h"表示main.c上一级文件(base)夹下的func3.h头文件。
在main中使用func4.h:#include
"..\func4\func4.h"
这里main.c和func4.h不在在同一个文件下,但文件夹main和文件夹func4同级。"..\func4\func4.h"表示main.c上一级文件夹(base)下的func4文件夹下的func4.h头文件。
注1:DOS命令中"cd.."和这里的".."有类似的作用。
注2:"#include"
可读作 "包含当前源代码或头文件"
".." 可读作
"上一级文件夹"
"" 可读作
"下的"
"func4" 可读作
"func4文件夹"
"" 可读作
"下的"
"func4.h" 可读作
"func4头文件"
连起来就是:
"包含当前源代码或头文件上一级文件夹下的func4文件夹下的func4头文件"。
注3:
用#include
加载头文件时,"./"表示当前目录,"../"表示当前目录的上一级目录。注意!这个当前目录不是工程所在的目录,而是该文件所在的目录。在include中,'/'与'\'的功能貌似一样,#include
"../math/Vector3.h"与#include "..\math\Vector3.h"也貌似等价。
在字符串中,'\'是转义字符,要表示'\',在字符串中应写为'\\',因此"../A/B/C.exe"与 "..\\A\\B\\C.exe"等价。
本文主要介绍了如何不同文件夹下使用预处理器指示符#include。
假设我们有如下一个工程,其中包含了几个源代码文件和头文件。其中main.c是主源代码文件,里面包含main函数。
在base中包含:func3.h,func3.c,文件夹main和文件夹func4
在main中包含:main.c,func1.h,func1.c和文件夹func2。
在func2中包含:func2.h和func2.c
在func4中包含:func4.h和func4.c
在main中包含头文件func1.h:#include
"func1.h"
这里main.c和func1.h在同一个文件下。
在main中包含头文件func2.h:#include
"func2\func2.h"
这里main.c和func2.h不在在同一个文件下,但文件夹func2和main.c同级。"func2\func2.h"表示main.c这一级func2文件夹下的func2.h头文件。
在main中包含头文件func3.h:#include
"..\func3.h"
这里main.c和func3.h不在在同一个文件下,但文件夹main和func3.h同级。"..\func3.h"表示main.c上一级文件(base)夹下的func3.h头文件。
在main中使用func4.h:#include
"..\func4\func4.h"
这里main.c和func4.h不在在同一个文件下,但文件夹main和文件夹func4同级。"..\func4\func4.h"表示main.c上一级文件夹(base)下的func4文件夹下的func4.h头文件。
注1:DOS命令中"cd.."和这里的".."有类似的作用。
注2:"#include"
可读作 "包含当前源代码或头文件"
".." 可读作
"上一级文件夹"
"" 可读作
"下的"
"func4" 可读作
"func4文件夹"
"" 可读作
"下的"
"func4.h" 可读作
"func4头文件"
连起来就是:
"包含当前源代码或头文件上一级文件夹下的func4文件夹下的func4头文件"。
注3:
用#include
加载头文件时,"./"表示当前目录,"../"表示当前目录的上一级目录。注意!这个当前目录不是工程所在的目录,而是该文件所在的目录。在include中,'/'与'\'的功能貌似一样,#include
"../math/Vector3.h"与#include "..\math\Vector3.h"也貌似等价。
在字符串中,'\'是转义字符,要表示'\',在字符串中应写为'\\',因此"../A/B/C.exe"与 "..\\A\\B\\C.exe"等价。
相关文章推荐
- 问题解决:fatal error C1083: 无法打开包括文件:No such file or directory
- 解决error C1083: 无法打开包括文件: “sys/time.h”的问题
- 编译DXUT框架中CustomUI例子遇到问题:无法打开包括文件:“msctf.h”的 解决办法
- 解决 “fatal error C1083: ”无法打开包括文件
- Cocos2d-x 3.x 中解决 无法打开包括文件:“json/document.h”: No such file or directory 的问题
- 解决fatal error C1083: 无法打开包括文件:“opencv2/core/cvdef.h”: No such file or directory问题
- 问题解决 错误 C1083 无法打开包括文件: “thirdparty/textDetect/erfilter.hpp”: No such file or directory
- 解决“fatal error c1803 无法打开包括文件”问题
- 关于解决打开CHM文件无法显示的问题
- 编译问题解决:LINK : fatal error LNK1104: 无法打开文件“*.dll”
- 解决盗版VC++无法打开文件和无法向工程中添加文件的问题
- vs2003.net中aspx文件无法以设计视图打开问题的解决
- VS2008提示无法打开包括文件:“afxcontrolbars.h”解决办法
- 无法打开文件"LIBC.lib"问题解决
- 无法打开输入文件“Files\OPNET\14.5.A\sys\pc_intel_win32\lib.obj”的问题所在以及当时的解决办法
- COCOS2D-X 关于 fatal error C1083: 无法打开包括文件:“CCStdC.h” 的问题
- Cocos2d-x 3.0 beta 中加入附加项目,解决无法打开包括文件:“extensions/ExtensionMacros.h”
- Cocos2d-x 3.0 beta 中加入附加项目,解决无法打开包括文件:“extensions/ExtensionMacros.h”: No such file or directory”
- QtCreater添加外部库编译error: C1083: 无法打开包括文件: “openssl/pkcs12.h”: No such file or directory原因分析
- EDIUS中的文件无法打开问题怎么解决