一、 字符数组的初始化
字符数组可以在定义时进行初始化.有两种初始化方法.
方法1:逐个字符赋给数组中各元素.这种方法最容易理解
(1)如果大括号内提供的初值个数(即字符个数)大于数组长度,则编译时将出错.
如果初值个数小于数组长度,则只将这些字符赋给前面的数组元素,其余的元素自动赋空字符(即'\0')
char c[5]={ 'H','a','p','p','y' }; //把5个字符分别赋给c[0]至c[4].
char c[10]={ 'h','e','l','l','o' };
--------------------------------------------------------------------------------
c[0]=h , c[1]=e , c[2]=l , c[3]=l , c[4]=o
c[5]=\0, c[6]=\0, c[7]=\0, c[8]=\0, c[9]=\0
--------------------------------------------------------------------------------
(2)如果提供的初值个数与预定的数组长度相同,在定义时可以省略数组长度,系统会自动根据初值字符个数决定数组大小
char c[]={ 'p','r','o','g','r','a','m' };
char trinangle[3][5]={ { ' ',' ','o' },{ ' ','o','o','o' },{ 'o'
C语言中的字符数组初始化、拷贝与转换

本文详细介绍了C语言中字符数组的初始化,包括逐个字符赋值和使用字符串常量的方式,并讨论了字符数组与字符指针之间的转换。同时,对比了memcpy和strcpy在拷贝数组时的效率差异,以及在处理字符串常量时的注意事项。最后,提到了函数传参中涉及的数组与指针的区别。
最低0.47元/天 解锁文章
3641

被折叠的 条评论
为什么被折叠?



