2010-03-29 53 views
3

是指在somefile.h或somefile.h的项目文件夹中搜索前一个文件夹?#include“../somefile.h”中的..是什么意思

+0

永远不要在新代码中使用此代码,并在旧代码中更改它。使用相对路径(../whatever)有可怕的可伸缩性问题。 – 2010-03-29 22:44:52

回答

14

这意味着寻找somefile.h在父文件夹相对于源文件,其中包含指令被发现的父目录。

在(其中本公约自AFAIK来到这就是)* nix系统:

.  manse the current directory. 
..  means one level up from the current directory. 

例如,如果你有以下目录结构:

home 
    | 
    code 
     | src 
     | someOtherDirectory 

源文件可能是home/code/src你有:

#include "../somefile.h" 

在你的源代码,然后编译器将要寻找somefile.hhome/code/

+0

不只是* nix,而且DOS也是 – Kip 2010-03-29 21:25:52

+0

@Kip DOS还没有从老式的Unix系统中得到这个约定吗? – AraK 2010-03-29 21:29:22

+2

小调 - 这不是标准所要求的,是“..”的意思,这在几乎任何文件系统的实践中都意味着什么。 – 2010-03-29 21:54:58

2

这意味着该目录中的源文件中。

3

这意味着看在父目录“somefile.h”,相对于目录包含的指令文件是英寸

0

好吧,如果你的源文件在/src,然后somefile.h应该高于src/