c语言学习笔记39字符数组

字符串用一维字符数组存放
字符数组具有一维数组的所有特点
数组名是指向数组首地址的地址常量
数组元素的引用方法可用指针法和下标法
数组名作函数参数是地址传递等
区别
存储格式:字符串结束标志
赋值方式与初始化
输入输出方式:%s  %c

用字符数组和字符指针变量都能实现字符串的存储和运算,但它们二者之间是有区别的,不应混为一谈,主要有以下几点。
(1) 字符数组由若干个元素组成,每个元素中放一个字符,而字符指针变量中存放的是地址(字符串第1个字符的地址),决不是将字符串放到字符指针变量中。
(2) 赋值方式。可以对字符指针变量赋值,但不能对数组名赋值。
char *a; a=”I love China!”;   对
char str[14];str[0]=’I’;   对
char str[14]; str=”I love China!”; 错
(3)初始化的含义
char *a=”I love China!”;与char *a; a=”I love China!”;等价
char str[14]= ”I love China!”;与
char str[14]; 
str[]=”I love China!”;不等价
(4) 存储单元的内容
  编译时为字符数组分配若干存储单元,以存放各元素的值,而对字符指针变量,只分配一个存储单元存储地址
char *a; scanf(“%s”,a);   错 char *a,str[10];     
 a=str;          
 scanf (“%s”,a);      对
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值