绝对路径,当前路径(相对路径)
2017-10-10 本文已影响25人
NiceBlueChai
绝对路径
又称全路径,从顶级目录开始,描述一个文件路径的完整信息。
c:/windows/system32/abc.dll
d:/cpp/mytest/debug/test.exe
当前路径
当前路径, 又称当前目录、工作目录
current directory / working directory
指的是程序的工作目录。
当一个文件不带路径、只有文件名时,表示在当前路径下创建。
在VC中运行程序时,默认的当前路径是项目所在路径
在命令行运行程序时,在哪个目录运行,当前路径就在哪里。
在程序里,可以写代码调整自己的工作目录。
不同的平台上,调用不同的函数。
在VC下,
SetCurrentDirectoryA("d:\\test\\cpp\\");
这个函数要求用\作为分隔符
相对路径
如果一个路径不是绝对路径,那它就是相对于当前工作目录的路径,称为相对路径。
例如,
工作目录:d:/cpp/hello/
"abc.txt": 则创建d:/cpp/hello/abc.txt
"out/abc.txt" 即d:/cpp/hello/out/abc.txt
两个特殊的相对目径. 和..
.表示本目录
..表示上层目录
工作目录:d:/cpp/hello/
则
"./out/abc.txt" 即d:/cpp/hello/out/abc.txt
"../abc.txt" 即d:/cpp/abc.txt
"../../abc.txt" 即d:/abc.txt
在各个平台(windows和linux)下,相对路径.和..的意义是相同的
还可以更复杂
../abc/.././other/../a.txt
理论上有效,但实际上很少有人这么写