在C语言中char c 10 = china;与 char c10 = china;的区别
这两种写法在实现上是相同的,都是将字符串 "china" 复制到字符数组 c 中。但是它们的初始化方式不同。
-
char c[10] = {"china"};这种写法将字符串 "china" 拷贝到字符数组 c 中,并且在拷贝后的字符数组末尾会自动添加一个空字符 '\0'。这样字符数组 c 的长度为 10,包括了 "china" 的 5 个字符和一个结尾的空字符,剩余的 4 个字符被初始化为 '\0'。 -
char c[10] = "china";这种写法同样将字符串 "china" 拷贝到字符数组 c 中,并且在拷贝后的字符数组末尾也会自动添加一个空字符 '\0'。同样,字符数组 c 的长度为 10,包括了 "china" 的 5 个字符和一个结尾的空字符,剩余的 4 个字符被初始化为 '\0'。
所以两种写法在实现上没有区别,都会得到相同的结果。
原文地址: https://www.cveoy.top/t/topic/hPDe 著作权归作者所有。请勿转载和采集!