目录
一,什么是字符数组
字符数组是特殊的整数有序集合
——每个整数占用一个对应的类型字节
——可以用字符字面量对数组元素进行初始化或者赋值
——常用来存储可阅读的文本信息
1,数组中的元素能有哪些类型
包含所有基本类型。
例如:
int a[] = {1, 3, 5, 8 };
char b[] = {'H', 'i' };
二,如何用字符数组表示字符串
在C语言中,没有专门的字符串类型(字符串:用 " " 括起来的部分就是字符串 ),所以没有字符串变量。
但是可以通过字符数组间接表示字符串变量。
存在字符串字面量("hello."),但仅仅只能当作常量使用。
例如:
#define a "hello."
printf("%s\n", a );
用""括起来的都是字符串。
用数组表示字符串,只需要在数组最后一个元素加上0元素('\0')后,才是字符串。
问:字符串的0元素是啥?(在''中只表示一个字符,仅此而已)
'\0'表示的是0元素。
'0'表示的对于整数是48.
字符数组不一定是字符串,但字符串一定是一个字符数组。
char s[] = "hello" ;
char s[] ={"hello"};
char s[] = {'h', 'e', 'l', 'l', 'o', '\0' };
输出的均是hello
1,对字符串的操作。
C语言中,不能直接对字符串操作,操作时需要应用字符串工具包。
#include <string.h>
包含的字符串工具包如下:
strlen (s) 获取字符串长度。
strcpy (S1,S2) 将S2中的字符复制给S1。
strcat (S1,S2) 将S2追加到S1后面。
strcrmp (S1,S2) 比较S1和S2是否相等,相等输出0。