免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
正斜杠與反斜杠的分析
正斜杠(左斜杠),符號(hào)是"/";反斜杠(右斜杠),符號(hào)是"\"。
 
  在Unix/Linux中,路徑的分隔采用正斜杠"/",比如"/home/hutaow";而在Windows中,路徑分隔采用反斜杠"\",比如"C:\Windows\System"。
 
  有時(shí)我們會(huì)看到這樣的路徑寫法,"C:\\Windows\\System",也就是用兩個(gè)反斜杠來分隔路徑,這種寫法在網(wǎng)絡(luò)應(yīng)用或編程中經(jīng)??吹?,事實(shí)上,上面這個(gè)路徑可以用"C:/Windows/System"來代替,不會(huì)出錯(cuò)。但是如果寫成了"C:\Windows\System",那就可能會(huì)出現(xiàn)各種奇怪的錯(cuò)誤了。
  至于上述問題出現(xiàn)的原因,要從字符串解析這方面來分析。
  學(xué)過編程的人都應(yīng)該知道,在C里面,輸出字符串時(shí),如果想輸出一個(gè)換行,那就要加上'\n'這個(gè)標(biāo)志,類似的,輸出一個(gè)TAB,就加上'\t',也就是說,反斜杠("\")這個(gè)符號(hào)會(huì)把跟在它后面的字符結(jié)合起來轉(zhuǎn)義成其它字符。根據(jù)這個(gè)原理,如果想輸出雙引號(hào)('"'),就需要輸入'\"',這樣才會(huì)將包含了雙引號(hào)的字符串正確的寫入內(nèi)存中。那么如果想輸入一個(gè)反斜杠呢?很簡單,只要敲'\\'就可以了。
 
  看到這里或許有些人已經(jīng)看出眉目了,如果"C:\Windows\System"這個(gè)路徑字符串交給C編譯器編譯,實(shí)際寫入內(nèi)存的字符串并沒有包含反斜杠"\",甚至緊跟在反斜杠后面的字母也一起被轉(zhuǎn)義成了其它的字符,再次調(diào)用的話勢(shì)必會(huì)出問題。
  字符串解析不僅僅局限于C編譯器,Java編譯器、一些配置文件的解析、Web服務(wù)器等等,都會(huì)遇到對(duì)字符串進(jìn)行解析的這個(gè)問題,由于傳統(tǒng)的Windows采用的是單個(gè)斜杠的路徑分隔形式,導(dǎo)致在對(duì)文件路徑進(jìn)行解析的時(shí)候可能發(fā)生不必要的錯(cuò)誤,所以就出現(xiàn)了用雙反斜杠"\\"分隔路徑的形式。不管解析引擎是否將反斜杠解析成轉(zhuǎn)義字符,最終在內(nèi)存中得到的都是"\",結(jié)果也就不會(huì)出問題了。
 
  由此也可以看出Windows或者說DOS在設(shè)計(jì)初期考慮不夠周全,為了和Unix一些特征區(qū)別開來,將Unix中的正斜杠"/"分隔路徑方式改變成了反斜杠"\"。這樣改變導(dǎo)致的一個(gè)問題就是在早期DOS命令行中,正常的文件名是不能包含空格的,如果包含了空格,會(huì)導(dǎo)致輸入這樣的文件名時(shí),命令解析無法將其和參數(shù)區(qū)分開。例如,想要進(jìn)入"hutaow yuan"這個(gè)目錄(在此先忽略8.3命名規(guī)則),直接輸入"cd hutaow yuan",命令行會(huì)將其解析為進(jìn)入"hutaow"目錄,而后面的"yuan"做參數(shù),這顯然不是所期望的。
  而在Unix中,文件名如果包含空格,可以直接在空格前加上反斜杠"\"進(jìn)行轉(zhuǎn)義,從而很好的和命令參數(shù)區(qū)別出來(參數(shù)之間一般使用空格分隔)。還是上面的例子,在Unix中,只要輸入"cd hutaow\ yuan"(在yuan前面的空格前加上"\"),命令行會(huì)正確的辨認(rèn)出"hutaow yuan"并進(jìn)入這個(gè)目錄。
  當(dāng)然,現(xiàn)在Windows的后續(xù)版本已經(jīng)使用其它方法(比如文件名用雙引號(hào)括住)解決了空格問題。
 
 
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
面試中的小細(xì)節(jié)?Python中單引號(hào)、雙引號(hào)與三引號(hào)的用法與區(qū)別
轉(zhuǎn)義字符--python
正則表達(dá)式
shell完成查找指定目錄下的指定字符串,顯示所有含該字符串的文件名
正則表達(dá)式的用法(下)
Python文本處理
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服