在我的 C++ 书中,有一个两页的 C 样式字符串部分(这几乎看起来毫无意义,因为它两次告诉我们 C++ 程序员不应该使用 C 样式字符串),但我感到困惑的一件事是..有什么区别:
char ca[] = {'C', 'a', 't'};
和
char ca[] = "cat";
对于第一个,它说它可能会产生“灾难性”的结果,因为 c 样式的字符串必须以空值结尾。但是第二个不也是 c 风格的字符串吗?为什么我不必输入“cat\0”或类似的东西?这不应该也导致“灾难性的后果”吗?