C/C++路径问题之正斜杠与反斜杠

时间:2021-04-09 14:48:57

今天在写程序的时候突然想不清楚路径的斜杠是怎么写的了。看了下程序里既有反斜杠也有正斜杠,当然还有双反斜杠。然后就查了点资料,总结了一下~

C/C++路径问题之正斜杠与反斜杠

C/C++路径问题之正斜杠与反斜杠C/C++路径问题之正斜杠与反斜杠

C/C++路径问题之正斜杠与反斜杠

C/C++路径问题之正斜杠与反斜杠


正斜杠,又称左斜杠,符号是"/"
反斜杠,也称右斜杠,符号是"\"


DOS路径中:
D:\SIN\         ...这是反斜杠的作用后面跟着的是文件名
D:\dir  /P      ...这就是正斜杠后面是一个名令的参数dir 是命令.


C/C++中:
"\" 是转义字符


windows系统中:

反斜杠\,在windows系统中用来表示目录
正斜杠/,网址、Url地址


在unix系统中,/表示目录

由于web遵循unix命名,所以在网址(URL)中,/表示目录


还有

"./" 指当前目录 

"../" 表示当前目录的上级目录


所以最后在C/C++中的路径名:
D:\doc\*******.txt
应为:
CString filename=_T("D:\\doc\\*******.txt");或CStringfilename=_T("D:/doc/*******.txt");


呃,也有需要把路径中的"\"转化成"\\"的时候。

例如你用某个函数获取了一个地址,然后接着就要用这个地址。就需要进行转换,注意一点就是/是默认的转义字符。

错误的修改是Replace("\", "\\");

正确的为Replace("\\", "\\\\");