C语言笔记(字符串的幅值)

字符串的正确幅值有两种:如下所示

char c[] = "sadad";
char c[6];
strcpy(c, "sadad");

 我在编程时犯了如下错误:

char c[];
c[]="sadsa";

程序中有两个错误:

1,没有给数组的长度幅值。在这种情况下,数组的大小如果不显式指定,则需要通过初始化列表来确定大小。例如,在声明和初始化一个字符数组时,可以直接给出字符串常量来确定数组的大小。但是在单独声明一个数组后再赋值字符串常量的情况下,系统无法根据赋值的字符串常量自动确定数组的大小,因为在这种情况下,编译器无法确定所赋值的字符串的长度。因此,需要手动指定数组的大小或者使用字符串处理函数来给数组赋值。

2,无法将字符串幅值到数组中。

char c[10];        
c[10] = "sadad"; 

在C语言中,数组索引是从0开始的,所以c[10]实际上是数组c中的第11个元素,而不是数组的大小。如果需要将字符串常量"sadad"赋值给数组,只能使用字符串幅值函数。 

最后,打印字符串使用%s格式,打印单个字符使用%c格式。

printf("c=%s",c);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值