c语言字符数组与字符串


一、简介

字符数组:以字符为数组元素的一系列数据集合,可用于保存文本,常用于处理文本系列及各种文本程序。
字符串:一系列字符组成的集合对象。


二、字符数组

字符数组的定义 初始化同其它数组变量一样
例: char a[100] ;//定义一个包含100个字符的字符数组
a[100]={‘a’,’b’,’2′,’4′}; //初始化前4个变量,后面的默认为空值
for(int i=0;i<100&&((a[i]=getchar())!='\n';i++) //数组动态赋值
三、字符串

3.1 字符串:用双括号括起来的任意字符序列;
3.2 字符串定义注意事项:
字符串系列不能跨越两行;
字符串系列中如果包含特殊字符,需要采用转义字符,不然会导致字符串定义错误


四、字符数组与字符串之间的关系

4.1 字符串文本在内存中的存储方式,是以一个字符数组的形式存储:编译系统通常会分配一组连续的存储单元,然后将字符串顺序的存储进字符串数组,每个字符占用一个字节,存储完所有的字符常量后, 需要在最尾加上一个 ‘\0’空字符,来作为字符串的结束标志。
例:
字符串 “HelloWorld”

H

e

l

l

o

W

o

r

l

d

\0

字符串同基本数据类型的不同之处,在与,字符串的存储大小会随着字符串的大小而发生变化。
4.2 字符数组的初始化,可以直接采用一个字符串进行初始化:
例:
char a[]=”hello”;
char a[5]=”hello”;
char a[5]=”hellow”; //初始化错误 超过字符串长度
char b[5]=”helloWorld”; //初始化错误,因为字符串的长度超过字符数组的长度
相关阅读:
数组的简介