什么是c中正确的字符串终止符

Des*_*PRG 3 c arrays string char

据我所知,c中的字符串终止字符是'\ 0'.

我们也可以使用'0'作为终止字符吗?当我将0分配给char数组中的特定索引,然后使用printf时,它只打印到该特定索引.

因此,两种方式都相同吗?是等于文字0的空字符?

The*_*kis 19

可以用作空终止符的唯一值是数值0.

  • 0 数值0.
  • '\0' 也是在代码中表示数值0的另一种方法
  • '0' 不是数值0(它是数字零),不能用作终止符.

所有字符串文字在其最后一个可见字符后隐式包含空终止符.在其他情况下,它可能会或可能不会自动存在(取决于字符串的构造方式),但您必须确保在每种情况下都存在空终止符.


kot*_*moy 7

  • 是等于文字0的空字符?

是.

null字符(也是null终止符),缩写为NUL,是一个值为零的控制字符.

  • 我们也可以使用'0'作为终止字符吗?

编号"0"是值为0x30的字符.它不是空字符,不等于0.

请看这个链接:http://www.asciitable.com/


Bat*_*eba 5

'\ 0'是输入字节0的便捷方式.它叫做转义.'0'是字符零; 非常不一样.c中的所有字符串都以字节0结尾.