【发布时间】:2018-10-07 20:41:29
【问题描述】:
所以我知道所有 C 字符串都是 C++ 中的字符数组。字符串呢?
还有为什么 char x[] = {'H', 'i'}; 不是 C 字符串?
x 是一个字符数组,这意味着它是一个 C 字符串。我错过了什么吗?
【问题讨论】:
-
不,
std::string是一个类。char x[] = {'H', 'i'};不是有效的 c 字符串,因为没有终止'\0'字符。 -
您使用的
c-strings标签的描述:“在编程语言C中,字符串表示为一个字符序列,后跟一个空终止符(表示为\0)。" -
您是专门询问
std::string的吗?因为在C++中,您可以选择以各种方式表示字符串类型对象。 -
感谢您的所有回答。但我想明确这个问题:字符串(不是 C 字符串)是 C++ 中的字符数组吗?