C语⾔char数组的初始化
字符数组的定义与初始化:
char a[ 5 ] = { ’ a ', ’ b ', ’ c ', ’ d ’ };
注意:
1. ⼤⼩为 n 的字符数组,最多能赋值 n - 1 个字符。若超过 n - 1 个,则会直接报错;若是少于 n - 1 个,则其余的⾃动赋为空字符 ‘
\0 ’ 。
2. 若在定义数组时赋值为空,即:char a[ 5 ] = { ’ \0 ’ }; 其实这样赋值只是把第 1 个元素赋值为 ‘ \0 ’,后⾯的都默认⽤ ‘ \0
’ 填充。
⽽若在定义数组时,char a[ 5 ] = { ’ a ’ }; 此时只有第⼀个为 ‘ a ’ ,后⾯都是 ‘ \0 ’ 。
定义数组初始化千万不要以为写成 char a[ 10 ]; 不赋值也可以,这样写⾥⾯的内容是乱的。
所以在定义数组时,最好写成:char a[ 5 ] = ’ \0 ’ ;
对字符数组进⾏赋值的⽅式:
1. char a[ 5 ] = " abcd "; //在初始化时,对数组进⾏赋值;定义好后不能这样赋值。
2. char a[ 5 ] = { ’ a ', ’ b ', ’ c ', ’ d ’ }; //这种⽅式也是只能在初始化时使⽤。
3. 对字符指针变量赋初值(初始化):
char *a=“I love China”;
等价于:
char *a;
a = “I love China”;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论