下列的符號常量定義中錯誤的定義是 下列關(guān)于C語言中字符常量與字符串常量的敘述中錯誤的是()?
下列關(guān)于C語言中字符常量與字符串常量的敘述中錯誤的是()?字符串常量是用雙引號括起來的字符序列,而不是單引號。C錯了。其他三個選項是正確的。選擇C設(shè)計權(quán)衡。一方面,與輸入換行符字符串相比,語言用戶常常
下列關(guān)于C語言中字符常量與字符串常量的敘述中錯誤的是()?
字符串常量是用雙引號括起來的字符序列,而不是單引號。C錯了。其他三個選項是正確的。選擇C
設(shè)計權(quán)衡。一方面,與輸入換行符字符串相比,語言用戶常常忘記鍵入下面的引號,或者刪除一半的引號,從而使代碼的結(jié)尾變成一個字符串。另外,如果按照這種方式設(shè)計,解析器就很容易編寫。您可以直接判斷語句在行尾寫錯了(沒有引號)。然后換行符被設(shè)計為轉(zhuǎn)義符。此外,事實上,換行和回車換行是平臺相關(guān)的。如果默認情況下讓字符串支持換行,那么代碼將出現(xiàn)跨平臺問題。例如,從OSX(R)到windows(Rn)的行將變成一行,從windows到Linux的行的結(jié)尾將有多個不可顯示的字符。而這種帶換行語句的跨平臺換行,版本管理工具和編輯器是否能幫你修改換行字符的結(jié)尾是一個坑。實際上,C的原始字符串更方便用戶編寫反斜杠。輸入大量轉(zhuǎn)義字符時,不需要連續(xù)寫兩個反斜杠。至于支持多行字符串,應(yīng)該包括在內(nèi)。手機的代碼不是很清楚。請原諒我。
下列字符串常量表示中,()是錯誤的?
A.“ab”ab
B.“ab”ab
C.“ab”
D.“ab”][答案]C
[解析
]選項A中的第二個雙引號是字符,因為它前面有一個轉(zhuǎn)義字符“”
選項B中的單引號不起作用
雖然選項C中有兩個雙引號,但后者是一個字符,不是字符串常量結(jié)尾的符號,導致字符串常量沒有結(jié)尾
在選項D中,“”表示反斜杠“”,不是轉(zhuǎn)義字符,因此它不能形成“”,這是正確的