C語言中單獨是合法轉義字元麼?不是的話解釋下

2021-03-10 15:50:28 字數 1280 閱讀 7645

1樓:金色潛鳥

單獨一個bai \ 不是合法轉義字元

duzhi。

轉義字元 就是指 反斜槓後面的字元,dao不按原意 解釋,內而要按容 「轉義」 解釋。

轉義字元 **於英文 "escape sequence" , sequence 就是指後面的那個字元。

唯一 一個 單獨一個 \ (除了註解行)是 合法 字元的情況,印象中只有:

c語言中有時程式 1行 寫不完,但語法上 要求寫 成 1行,例如 複雜的 #define 有時要寫很多行。這時,可以用 \ , 看上去 是單獨一個 \,後面連 空白 都沒有,它可以標示 「下行是續行,它們應當放在同一行看待」。

下面意思一下。原應寫: #define a 12345

用續行的方式寫:

#define a \

12345

printf("%d", a); // 列印出 12345

(注意,\ 前面 可以有空格,\後面不允許 哦)。

c語言中,不是所有字元都有 轉義,沒有轉義 的 加了 \ 算錯。必須轉義 的必須 加 \.

例如 \\ 兩個 反斜槓 表示 1 個 反斜槓。

"c:\\user\\prog\\abc.txt" 表示 字串 c:\user\prog\abc.txt

2樓:匿名使用者

\ 後面不跟東西(在檔案結尾)的話都不是標準c**……否則的話, \ 後面必然要跟東西,如果程式設計師並不認為 \ 後面的東西是要被轉義的字元的話,就會出現各種錯誤……

3樓:匿名使用者

單個\也是轉義字元,它會強制把其後的字元進行轉義。

4樓:木木青青

我認為單獨一個\不是合法的轉義字元,\單獨存在時沒有意義的,語法上就會報錯

必須在後面跟有其他字元才會有意義

5樓:匿名使用者

個人認為\不是bai一個合法du轉義字元(編譯器zhi也這麼認為)。當**dao

中出現 」\「 的時候,就代表程式

專員要告屬訴編譯器:「注意了哦,後面有個東西的意思不是它的本意哦 ,你去找找這個東西的另外一個意思。」如果說" \ "的後面有東西,那麼編譯器就去找這個東西本身代表的另外一個意思,如果沒有找到,那麼編譯器就會報錯,並告訴程式設計師說:

」這個東西沒有其他意思啊,要不你檢查檢查!「。如果」\「的後面啥也沒有,編譯器問了,你這是幾個意思??

你要我找什麼?? 當然,計算機太笨,它並不會反問。有歧義即有錯誤!

這個還有什麼好說的。

在C語言中,下面哪項是非法轉義字元AbB

b十六進位制 xf d項 就是 2.是非法的c語言轉義字元。a b b 0xf c.037 d a b本身是轉義字元 正確.b 如果要16進位制,需要寫成 xf 字元轉義的時候不需要寫0x的.c 037 才對,這種是8進位制轉義.d 這裡應該不是雙引號 而是 即 兩個單引號包含的一個 表示單引號轉義...

C語言中什麼是字串,C語言中如何定義字串?

加了 符號的字元,例如 c 3 在c語言中,由零個或多個字元組成且通過雙引號括起來的有限序列就叫字串.例如 hello world 我愛中國 a 123456 等等.另外字串在記憶體中是由字元型陣列來儲存的.且在儲存的時候多加 0 表示字串已經結束.例如 char string 12 hello w...

c語言轉義字元t到底是怎麼跳位的

t 是8位但是你要明白它不是對於前一個字元來說的8位,而是對面斑來說的 printf a tb n a b printf as tb n a s b printf asdfghj tb n a s d f g h j b printf asdfghjk tb n a s d f g h j k b ...