./和/(根目录和当前目录)有什么区别?

时间:2017-10-08 22:51:45

标签: unix path filesystems

这两者有什么区别? 假设文件a和b位于同一文件夹中,我们希望在文件a中包含b。 不是./b和/ b是一回事吗?我应该使用哪一个?

1 个答案:

答案 0 :(得分:0)

当且仅当您的当前工​​作目录为./b时,

/b/才是相同的。你应该使用前者(a)

作为进一步说明,假设您当前的工作目录是/my_code_dir,并且您拥有以下格式的代码:

#include "./b.h"
#include "/b.h"

暂不讨论实施定义的C包含问题,前者将使用/my_code_dir/b.h而后者将使用/b.h

(a)当然,假设他们是你唯一的两个选择。在任何体面的开发环境中,您可能应该避免使用这些“痕迹”风格的路径(如../../../include/xyzzy/plugh.h),而是依赖于您的环境设置包含路径(因此您可以使用{{1 }})。这样,事情可以自由移动,而不必去更改大量的代码。