设有数组定义: char array[]="China"; 则数组 array所占的空间为
在定义字符数组用字符串常量进行初始化时,系统会自动在结尾加'\0'做结束标志,所以数组array所占的空间为6个字节。
分析过程:
"china"是个字符串常量,字符串是以\0为结束符的字符数组,\0是个不可视字符,故"china"所占的空间为:5+1=6。
扩展资料:
字符数组的输入
用getchar()或scanf()的'%c'格式符对数组进行字符赋值。例如,对于数组a[10]:用getchar()赋值:
for(i=0;i<10;i++)
a[i]=getchar();
用scanf()赋值:
for(i=0;i<10;i++)
scanf("%c",&a[i]);
参考资料来源:百度百科-array()
参考资料来源:百度百科-字符数组
6个字节。
字符数组是指用来存放字符数据的数组。其定义的一般形式为: char 数组名[数据长度] 。
字符数组用于存放字符或字符串,字符数组中的一个元素存放一个字符,它在内存中占用一个字节。在C语言中,是将字符串作为字符数组来处理的。为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”,以字符'\0'作为结束标志。因此是6个字节。
C语言中没有字符串类型,字符串是存放在字符型数组中的。
扩展资料:
字符数组的输入
1、用getchar()或scanf()的'%c'格式符对数组进行字符赋值。例如,对于数组a[10]:用getchar()赋值:
for(i=0;i<10;i++)
a[i]=getchar();
用scanf()赋值:
for(i=0;i<10;i++)
scanf("%c",&a[i]);
2、用scanf()的'%s'格式对数组赋值。还是对于数组a[10]:
scanf("%s",a)或scanf("%s“,&a[0]);
输入”C program“并回车时,a数组会自动包含一个以”\0“结尾的字符串”C program“。
参考资料:
选 C
char在内存中占一个字节,而数组array的数组元素个素由"china"的个数确定,而字符串有个结束标志,所以数组元素的个素共6个,相当于
array[6],每个元素占一个字节,所以6*1=6.
字符串结尾还有个'\0' 结束符