c语言字符数组重置,C语言字符数组初始化

(1)char str[10]={'I','','a','m','','h','a','p','p','y'};

即把10个字符分别赋值给str[0]到str[9]10个元素;

如果花括号中提供的字符个数大于数组长度,则按语法错误处理;

若小于数组长度,则只将这些字符数组中前面赋值,其余的元素自动定位空字符(即'\0');

若刚好相等,可以使用strlen等函数,此时会自动在最后加上'\0'(自测试)。

(2)char str[]={"I am happy"}; <==> char str[]={'I','','a','m','','h','a','p','p','y','\0'};

可以省略花括号,如下:char str[]="I am happy"; 不等价与char str[]={'I','','a','m','','h','a','p','p','y'};

注意1:上述这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于

字符数组的赋值,字符数组的赋值只能对其元素一一赋值,下面的赋值方法是

错误的:

char str[11];

str="I am happy";

而对字符指针变量,采用下面方法赋值:

char* a;

a="I love China";

或者是char* a="I love China"; 都可以

(3)字符数组并不要求它的最后一个字符为'\0',甚至可以不包含'\0',像下面这样写是完全合法的:

char str[5]={'C','h','i','n','a'};

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值