一、概念理解
1.C语言中没有字符串类型,用一片内存空间保存一串字符,这片空间称作字符数组。
2.以‘\0’结尾的字符数组被称为字符串数组。‘\0’是字符串结束的标志。
3.用双引号括起来的都是字符串。
二、初始化
char str[6] = {'h','e','l','l','o','\0'};//字符串数组
char str[6] = “hello”; //简化版写法
char str[6] = {'h','e','l','l','o'};//str[5]的内存上自动赋值为’\0’
char str[10]= {'h','e'} //其余8个元素自动赋值为’\0’
char str[]=“hello”;//元素个数可以省略 数组分配空间大小为字符串中实际赋值字节数6
char *str=“hello”;//str是指针 存储字符串首地址 指向字符串
注意:字符数组与字符串数组
char str[5] = {'h','e','l','l','o'};//是字符数组而不是字符串数组,因为没有’\0’
三、赋值
1.利用scanf函数接收字符串。scanf遇到空格或者回车就结束输入 也就是说 字符串中不可以有空格
2.利用gets函数接收字符串。可以接受有空格的字符串
3.(1)字符串拷贝--strcpy,该函数会将源的数据拷贝到目标中,并且会覆盖掉目标中原有的数据,目标的内存必须能够存放拷贝的数据。
(2)使用这个函数必须加头文件<string.h>
四、求字符串大小
1.使用strlen函数
(1)它是一个字符串函数,它相当于一个计数器,当它遇到’\0’时就停止计数。(不含字符‘\0’)
(2)需要加头文件<string.h>
(3)注意:这个函数只能用于求得字符串大小,不能求其他类型大小。
结果:
2.使用sizeof 是关键字 求得变量或类型所占内存空间大小
结果:
3.