在C语言中没有string类型的数据,要想表示字符串一般有两种形式:
1.字符数组
字符数组表示字符串可以有两种方式:
(1)char str1[ ]="aaaaa";
此种方法声明的字符串本质上是字符数组,在赋值前数组大小还没有确定。在赋值后编译器会自动在“aaaaa”后加上’\0‘以表示字符串的结尾,此时str1中存储的数是“aaaaa\0”,数组的大小为6。
(2)char str2[ 5]=“bbbbb”;
此种方法声明的字符串本质上是字符数组,在声明部分已经定义了数组的大小为5,在赋值“bbbb”后str2已没有空间来存储‘\0‘,str2存储的数据是“bbbbb”,数组的大小为5;
char str3[ 7]="ccccc"
此种方法声明的字符串本质上是字符数组,str3中存储的数据是“ccccc\0 ”。
2.字符指针
char *str4="ddddd"
此种方法声明的字符串本质上是一个指针,字符指针str4指向内存中的字符串“ddddd”,字符串的大小为6(包含’\0‘)。