字符串的存储方式有字符数组和字符指针,我们首先来看看字符数组,因为字符串就是由多个字符组成的,所以要想存储一个字符串,可以把他拆分成一个个字符,然后分别对这些字符进行存储,即通过字符数组存储,字符数组是一个数组,并且可以存储字符的数组,该数组中的每一个元素存放一个字符。
字符数组的定义
因为字符数组首先是一个数组,所以前面讲过的数组的内容统统使用,其次他是存放字符的数组,即数组的类型是 char 类型的,比如:
char name[10];
表示定义了10个字节的连续内存空间。 1 如果字符串的长度大于 10,那么就存在语法错误,这里需要注意的是,这里指的是“字符串长度”包括最后的"\0",也就是说,虽然系统会自动分配结束符"\0",但是他不会自动为"\0"开辟内存空间,所以定义数组长度一定要考虑"\0", 2 如果字符串的长度小于数组的长度,则只将字符串中的字符付给数组中前面的元素,剩下的内存空间系统会自动用 "\0"填充。
字符数组的初始化
字符数组的初始化与前面所讲数组的初始化一样,要么定义时初始化,要么定义后初始化,下面写一个程序员来说明这个问题:
#include<stdio.h>
int main(void)
{
char a[10];
a[0]='i';
a[1]=' ';
a[2]='1';
a[3]='o';
a[4]='v'