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

来源:互联网 发布:mysql默认密码是多少 编辑:程序博客网 时间:2024/04/30 10:13
字符串用一维字符数组存放
字符数组具有一维数组的所有特点
数组名是指向数组首地址的地址常量
数组元素的引用方法可用指针法和下标法
数组名作函数参数是地址传递等
区别
存储格式:字符串结束标志
赋值方式与初始化
输入输出方式:%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);      对
0 0
原创粉丝点击