设计了这种路径分隔法,它使用斜杠:/。由于网络是首先应用在 UNIX 计算机之间的,至今为止,一半以上的
网络服务器
仍是使用 UNIX 操作系统,所以网址也沿用了斜杠作路径
分隔符
。
DOS
2.0
从 UNIX 中借鉴了这种
目录结构
,但由于 DOS 中,斜杠已经用来作为
命令行参数
的标志了(
UNIX
中用的是“ - ”符),所以只得使用
反斜杠
:\
Windows 时代
很多时候已经没有命令行参数的干扰,加上网络使用的扩展,斜杠和反斜杠大多时候可以互换,没有什么影响。
互联网世界
斜杠“/”是很常见的一个符号。它的位置在右 Shift 的左边,不用按 Shift 就能够输入。
斜杠之所以占据那么重要的地位,应该得益于操作系统(Unix、Dos)的流行。在
命令行
中,一个斜杠往往是表示着
根目录
,也作为目录与目录之间的分割。
其实到了互联网时代,除了 URL 中可能要用到斜杠外,其他地方很少见到它的身影,它并没有随着历史而去。在编程中,经常用到“/”和“\”。在程序中,有时我们会看到这样的路径写法,"D:\\Driver\\Lan" 也就是两个反斜杠来分隔路径。事实上,上面这个路径可以用 "D:/Driver/Lan" 来代替,不会出错,写成了"D:\Driver\Lan"就可能会出现错误。至于出现错误的原因,还要从
字符串
解析这方面来分析。学过编程的人都知道,在C里面,输入字符串时,如果想输入一个换行,那就要加上'\n'这个标志,输出一个TAB 就要加上 '\t',反斜杠('\')这个符号会把跟在它后面的字符串结合起来转义成其它字符。根据这个原理,如果想输出
双引号
(' " ')就要输入' \" ',才能将包含了双引号的字符正确的写入到内存中。要想输入一个反斜杠的话,只有敲' \\ '了,这就是前面为什么会用两个反斜杠来分隔路径的原因。如果将"D:\Driver\Lan"这个路径字符串交给
C语言编译器
编译,实际上写入内存的字符串并没有包含反斜杠"\",甚至跟在它后面的字母也会一起被转义成了其它的字符。字符串解析不仅仅局限于C
编译器
,
Java编译器
、一些
配置文件
的解析、
WEB服务器
等等,都会遇到这个问题。