8.字符数组与字符串,2021-11-9

字符数组与字符串

字符数组:
字符数组就是char类型的字符数组,每一个元素存储一个字符,用于存储字符型数据。
字符串:
"hello world"这就是一个字符串。
下面是用这个字符串来初始化一个字符数组。

char ar[12] = { "hello world" };

这个字符串只有十一个字符(包括空格),它的大小应该是11个字节啊!那为什么要定义它有十二个元素呢?
因为字符数组的字符串后有一个结束符"\0",这个"\0"也要占一个字符的大小。

字符串函数

为了方便的处理字符串,C语言的库函数中提供了很多字符串处理函数。

strlen()字符串长度函数

strlen所作的是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符’\0’为止,然后返回计数器值(长度不包含’\0’)。

sizeof:

what?

strlen:
在这里插入图片描述

strlen函数与sizeof关键字功能看起来相似,都是用来计算大小的。
但是它们也有不同之处。

这里是引用(来自菜鸟教程)
在这里插入图片描述

strcpy()字符串复制函数函数

strcpy,即string copy(字符串复制)的缩写。
strcpy是C++语言的一个标准函数 [1] ,strcpy把含有’\0’结束符的字符串复制到另一个地址空间,返回值的类型为char*。
C 库函数 char *strcpy(char *dest, const char *src) 把 src 所指向的字符串复制到 dest。
需要注意的是如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。

strcat()字符串连接函数

将两个char类型连接。
C 库函数 char *strcat(char *dest, const char *src) 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾。

strcmp()字符串比较函数

strcmp函数是string compare(字符串比较)的缩写。
用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2)。
C 库函数 int strcmp(const char *str1, const char *str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较。
若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。

使用如图:
在这里插入图片描述
字符串函数还有很多很多,可以去cppreference这个网站查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值