"x"和"x"有什么区别?

What is the difference between 'x' and "x"?

本文关键字:区别 什么      更新时间:2023-10-16

'x'"x"

有什么区别

'x'是否意味着它是 char值,而 "x"表示它是字符串值?

非常抱歉与其他QN相似,因为我真的没有得到解释,因为它太复杂了。

文字'x'char。字面的"x"const char[2]类型的字符串字符串,一个null终止的char数组保持值 x

您的假设是正确的,

"x" is a string
'x' is a char

'x'表示一个具有值'x'的字符。

" x"是指具有value {'x',0}

的C型const char阵列

在C和C 中," X"是类型const char[],它是一个数组,它是null终止的(0x00)。而" x"是类型char
"字符串"一词有些模棱两可,因为它可以意味着两件事 -

  • 一串字符(const char[]
  • 数据类型std::string。C 在标准库中为字符串数据类型提供了支持,可以为const char[]分配。

只是为了澄清:

"我是"

实际上是这样:

{'i','','a','m',' 0'}