C语言中的字符数组与字符指针应用研究+源代码(2)
时间:2021-09-29 20:16 来源:毕业论文 作者:毕业论文 点击:次
C语言中用方括号中的数字表示下标,如用 表示 ,即第15个学生的成绩。 字符(非字符串数组,字符数组和字符串数组是有区别的,字符串数组是指它的每一个元素都是字符串)数组即用来存放字符数据的数组,在内存中占一段连续的单元。字符数组中的一个元素存放一个字符。 2。2 用字符数组处理字符串 字符串可以看作一组字符型数据的集合。C语言中,字符串是作为字符数组来处理的。 C语言中规定了一个“字符串结束标志”,以字符‘\0’作为结束标志。也就是说在遇到‘\0’则表示字符串结束,前面的字符组成一个字符串。C系统中在用字符数组存储字符串时会自动在末尾加入‘\0’。例如“Hello”共有5个字符,字符串存放在一维数组中,在数组有6个字节,最后一个字节是系统自动加的‘\0’结束符。因此在C系统中,在定义字符数组时应使得字符数组长度始终大于字符串实际长度,如若数组长度小于字符串长度,则编译器会给出警告。 通常情况下,用字符数组存储字符串有两种方法,一是逐个字符存放,即可以定义一个字符数组,并用“初始化列表”对其进行赋值。然后用循环逐个输出此字符数组中的字符,即可输出一个已知的字符串。 例如,输出“C program。”。 #include<stdio。h> int main() {char str[10]={‘C’,‘ ’ ,‘p’,‘r’,‘o’,‘g’,‘r’,‘a’,‘m’,‘。’}; int i; for(i=0;i<10;i++) printf(“%c”,str[i]); printf(“\n”); return 0; } 该程序的存储情况如下图所示: C p r o g r a m 。 这是将字符串中的字符逐个存放的,且字符长度与数组长度相同。二是也将整个字符串赋给指定的数组,例如, #include<stdio。h> int main() {char str[13]={“C program。”}; printf(“%s\n”,str); return 0; } 该程序的存储情况如下表所示: C p r o g r a m 。 \0 \0 \0 表1 数组的前10个元素为:‘C’,‘ ’,‘p’,‘r’,‘o’,‘g’,‘r’,‘a’,‘m’,‘。’,第11个元素为\0,后面的2个元素也设定为空字符。也可以将上面程序改为 #include<studio。h> int main() {char str[ ]={“C program。”}; printf(“%s\n”,str); return 0; } 则该程序的存储情况如下表: C p r (责任编辑:qin) |