字符数组大小

标签 c arrays string

下面的代码有什么区别?显然第一个声明最多可以包含 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/

相关文章:

c++ - 计算 pow(a,b) mod n

C语言改变数组中元素的值

c# - 输出不是在同一数组中交换元素的预期输出

c - 使用指针对c中的字符串数组进行排序

string - 在 golang 中正确拆分 rune

c - 在c字符串中输入多个单词

c - 在C中获取 float 的指数

c - 为什么在 C 中不能将一个字符串变量赋值给另一个字符串变量?

c++ - 使用 C++ 进行图像处理的有效方法是什么?

java - 如何在 Android 中将颜色整数转换为十六进制字符串?