首頁 > 軟體

C語言中反斜槓的作用及說明

2022-07-12 18:01:51

C語言中反斜槓的作用

反斜槓起到換行作用,用於宏定義和字串換行。其中宏定義中使用居多。

如果一行程式碼有很多元素,導致太長影響閱讀,可以通過在結尾加的方式,實現換行,編譯時會忽略及其後的換行符,當做一行處理。

1.在宏定義中

要換行必須使用 結尾。

#define CHECK_ACTION_RETURN(expr) 
    if (!expr) { 
        printf(":failed(%d)n", ret); 
        return ret; 
                } else { 
        printf(":okn"); 
                }

2.在字串常數中

可以使用 結尾。

"this 
is 
for 
testing"

和”this is for testing”是相同的,但是對於字串寫成

"this "
"is "
"for "
"testing"

效果是相同的,而且更美觀。

3.另外在普通的語句中

也可以通過 實現換行,不過這時沒有 也是一樣的效果。

比如

printf("this is for test %d %d %dn",
test_output_a,
test_output_b,
test_output_c);

printf("this is for test %d %d %dn",
test_output_a,
test_output_b,
test_output_c);

是沒有區別的,所以這時一般不會使用。

斜槓,雙斜槓,反斜槓與雙反斜槓

1. 斜槓

"/"是URL地址中用到的分隔符,斜槓/在Linux等其他作業系統中使用

web應用最早部署在Unix系統,所以目前使用的網路地址也是斜槓作為分隔符,可自行通過瀏覽器位址列觀察。

並且在linux系統中的檔案路徑也是用“/”分隔:比如在URL https://mp.csdn.net/mp_blog/creation/editor中,斜槓"/"起著分隔主機名、路徑、以及檔名的作用,比如linux常見的路徑名: /etc/ssh/sshd_config

2. 雙斜槓

“//”用在網路域名存取中,是協定和主機名或IP地址之間的分隔符,以雙斜槓//開頭的URL是依賴協定的URL表示形式,URL格式:協定://域名或ip/請求檔案路徑/檔名。https://mp.csdn.net/mp_blog/creation/editor ,協定為 https,主機名為 blog.csdn.net。

C程式中檔案路徑使用雙斜槓//

C語言中存在跳脫字元。C:Program Files是Windows下的路徑,在C檔案操作中就要改為使用雙斜槓為C:Program Files

3. 反斜槓

“”是Windows系統檔案目錄結構使用的分隔符,可常用做跳脫字元,此外在一些程式語言中,反斜線可作為一個強制換行符。反斜槓只有Windows系統中使用,Windows中斜槓/ 作為DOS命令提示字元的引數標誌了,為了不混淆,所以採用 反斜槓 作為路徑分隔符。

在windows下我們常用的路徑名 D:wenjiancsblog,就是用反斜槓來分隔目錄檔案的。n t等跳脫字元。

反斜槓在C裡面(以及大部分程式語言)屬於跳脫符,也就是其後的字元將有不同意義,比如n表示回車,再比如在perl裡面$x表示一個變數,而$x就不是變數了。至於就是將後面的跳脫了,此時後面的就不是跳脫符了,

而是字元本身,例如:printf(“n”);列印出來的就是n,而不是一個回車。

你只要記住會將後面的字元跳脫即可,,比如printf(“”);結果是編譯錯誤,因為前面的兩個是字元本身,第三個會去跳脫後面的",這樣就會缺少一個引號,造成編譯錯誤。

跳脫引號的地方很多,主要是要在字串裡包含引號,比如:printf(“hello “world”n”);

4.雙反斜槓

“\”在windows裡表示絕對地址的第一項,後面跟IP地址或計算機名,就是需要開啟這個IP地址或計算機名對應主機的網路共用資源。

經常使用的一個場景是在區域網內設定共用資料夾,區域網內的其他電腦要存取該共用資料夾時可以在位址列輸入 \共用資料夾電腦的區域網ip,比如 \192.168.1.100(設定了共用資料夾的電腦的ip,可以在cmd中輸入ifconfig檢視)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com