下面的代码有什么区别?显然第一个声明最多可以包含 200 个字符,但是第二个声明呢?
char name[200] = "Name";
char name[] = "Name";
最佳答案
首先创建一个包含 200 个 char
的数组,并使用 {'N','a','m','e','\0', 初始化其内容。 .. }
(其余部分由 NUL
填充)。
第二个创建一个足以容纳 "Name"
的数组,即 5 个 char
(还有一个用于 NUL
)
此外,您应该在 C 和 C++ 中对字符串文字使用双引号。
关于字符数组大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20569490/