首页 > 试题广场 >

在C语言中,设有数组定义:char arrays[]="Ch

[单选题]
在C语言中,设有数组定义:char arrays[]="China";则数组array所占用的空间为()。
  • 4个字节
  • 5个字节
  • 6个字节
  • 7个字节
C
结束符

发表于 2015-01-28 20:19:24 回复(1)
更多回答
推荐
C
【解析】C语言中的字符串用指向该串首个字符的指针表示。不保存长度信息,用'\0'来标识字符串的终止。
因此相当于 char arrays[] = {'C', 'h', 'i', 'n', 'a', '\0'};

编辑于 2015-01-26 15:31:51 回复(4)
答案:C C语言中用字符串初始化字符数组,字符数组会自动存储字符串的结束符’\0’以保证字符串可以正常结尾。因此内存中的存储为char arrays[] = {'C', 'h', 'i', 'n', 'a', '\0'};有6个字节
发表于 2017-09-07 17:21:08 回复(0)
1 64位系统的char型也是1个字节。 2 容易将数组占用的空间误解为指针变量占用空间。数组占用空间是数组里元素(包括字符数组的结束符)占用的空间。
发表于 2016-11-17 16:37:24 回复(1)
答案:C
C语言中用字符串初始化字符数组,字符数组会自动存储字符串的结束符’\0’以保证字符串可以正常结尾。因此内存中的存储为char arrays[] = {'C', 'h', 'i', 'n', 'a', '\0'};有6个字节
发表于 2015-01-28 15:12:34 回复(0)
cyi头像 cyi
这个题目本来应该是双引号的,单引号会报错,所以是题的问题,双引号占6个字节;单引号报错,如果是char array[]={'C','h','i','n','a'}则是占5个字节
发表于 2015-07-15 13:16:26 回复(0)
char arrays[] = {'C', 'h', 'i', 'n', 'a'}则是5个字节
发表于 2022-09-06 14:48:36 回复(0)
填错,想选c
发表于 2021-03-23 12:43:01 回复(0)

china五个字符各占一个字节,最后结束标志/0也是一个字节

发表于 2019-09-03 23:02:54 回复(0)
char arrays[] = “China” 相当于char arrays[] = {'C', 'h', 'i', 'n', 'a', '\0'};有6个字节 后面有个结束符。
发表于 2019-08-22 23:37:27 回复(0)
C语言中,数组不保存长度信息,用‘\0’标识字符串的终止。相当于{'C', 'h', 'i', 'n', 'a', '\0'};
发表于 2019-04-12 07:48:45 回复(0)
不要忘了\0也占用一个字符的空间
发表于 2018-11-27 01:20:08 回复(0)

sizeof用来获取类型或数据对象长度,也就是这种类型的变量在内存中所占的字节数。计入/0

strlen统计字符串的长度,遇到\0结束计数


发表于 2018-10-29 13:37:32 回复(0)
c语言中,字符数组最后一位为/0,表示字符串结束的标志位,系统会自动添加,占用一字节空间。
发表于 2018-10-28 17:17:32 回复(0)
arrays=China\0
编辑于 2018-07-14 21:44:15 回复(0)
忘记'\0'
发表于 2018-03-22 20:43:35 回复(0)
竟然忘记‘\0’的存在
发表于 2017-12-06 19:41:54 回复(0)
\0
发表于 2017-11-21 00:01:43 回复(0)
题目意思就是求sizeof(Arrays),还有一个\0
编辑于 2017-09-15 14:58:16 回复(0)
要存“\0”
发表于 2017-07-28 17:27:25 回复(0)
题目是不是错了,字符串怎么能用单引号''表示呢?编译器会报错;当然若改为双引号“”,则 所占内存是6个字节,因为编译器会为我们自动添加结束标志‘、0’。

发表于 2015-08-25 16:57:48 回复(0)
汀头像
单引号的字符串是什么鬼,sql吗?又不是sql语句。
发表于 2015-06-26 22:34:13 回复(0)