'x'
和"x"
有什麼區別?'x'和'x'有什麼區別?
是否'x'
表示它是一個char
的值,而"x"
是否意味着它是一個字符串值?
非常抱歉與其他qn的相似性,因爲我沒有真正解釋那裏的解釋,因爲它太複雜了。
'x'
和"x"
有什麼區別?'x'和'x'有什麼區別?
是否'x'
表示它是一個char
的值,而"x"
是否意味着它是一個字符串值?
非常抱歉與其他qn的相似性,因爲我沒有真正解釋那裏的解釋,因爲它太複雜了。
字面'x'
是char
。文字"x"
是類型const char[2]
的字符串文字,保留值爲x
和\0
的空終止字符數組。
我很挑剔,但它應該是「空終止」而不是「空終止」。 :P –
@TimothyShields我同意。編輯。 – juanchopanza
'「x」'不像任何'const char [2]',但它是允許它用'='初始化數組的字面值。 – hyde
你的假設是正確的,
"x" is a string
'x' is a char
我會小心地把它叫做C++中的一個字符串。它是一個CString(以空字符結尾的數組)而不是std :: string。你可以將其中一個指派給另一個的事實並不意味着它們是相同的。 – harmic
@harmic即使[CString](http://msdn.microsoft.com/en-us/library/aa300688%28v=vs.60%29.aspx)也很讓人困惑,因爲這裏有一個名字。 – juanchopanza
基本上,char值只是一個char值。一個字符串只是一個字符數組,以一個空終止符結束。這個想法有不同的實現,I.E. CString和std :: string,但基本的想法是相同的 – Snappawapa
'X' 是指具有價值 'X' 一個字符。
「×」是指值的c型常量字符數組{「X」,0}
在C和C++,「x」是const char[]
類型,其是一個數組,並且它是空終止(0×00)。 'x'類型爲char
。
這個詞「串」是有點曖昧,因爲這可能意味着兩件事情 -
const char[]
)std::string
的字符串。 C++在標準庫中支持字符串數據類型,可以指定const char[]
。只是爲了澄清:
「我」
實際上是這樣的:
{ '我', '', 'A',「M ','\ 0'}
是的,這正是差異。 – Brian
@BrianBi只要「字符串」的意思是「字符串文字」。 – juanchopanza