C语言数组—进阶版

  1. strlen

输出是hehe

因为strlen返回值是无符号数(unsigned int),两个无符号数相减的值任然是无符号数,即3-6=-3—>3。

  1. strcpy

错误示范

这里arr1是常量字符串不能被改变

  1. strcat

  1. strcmp

1.

2.

  1. strncpy

strncpy(arr1,arr2,n)

  1. 输入n就拷贝n个字符过去,不会补\0。

  1. 若arr2字符数量小于n,多拷的字符会自动补\0。

6.strncat

strncat(arr1,arr2,n)

  1. 会将arr2内前n个字符从arr1的第一个\0处开始补到后面去,补完后会自动补\0。(arr1变,arr2不变)

  1. 如果n大于arr2内字符数量,则会将将arr2内字符全部补过去,之后再补\0,不会像strncpy一样再往后面补\0,直到数量达到n。

7.strncmp

与strcmp的比较方式类似,只是限定了比较几个字符。

Tip1.

7.strstr—查找字符串

char arr1[]=”abcdbc”;

char arr2[]=”bc”;

strstr(arr1,arr2);

判断arr2是否是arr1的字符串,如果是子字符串则返回其第一次出现时起始位置的地址(这里就返回arr1的第一个b的地址),否则返回NULL。

8.strtok

第一次调用它会找标记,找到后把@改为\0,然后返回z的地址,打印时打印zpw。

第二次调用它从上一个标记(\0)处往后查找标记,找到后会把 . 改为\0,然后返回b的地址,打印时打印bitedu。

第三次调用它从上一个标记(\0)处往后查找,找到\0后并无标记后就找完了,同时返回t的地址,打印时打印tech。

演示1.

演示2.

演示3

  1. strerror

头文件#include<errno.h>

10.字符分类函数

如果结果正确返回非0数字,错误返回0。

头文件#include<ctype.h>

  1. 字符转换函数

转小写

转大写

Tip2.

对于整型数组与其他非字符数组的拷贝是不能用strcpy,如下

(整型存储今后看成char类型一字节一字节拷贝)

12.memcpy

用于对非字符数组的拷贝

最后一个参数是填写拷贝的字节

实现

如果出现内存重叠情况可以使用memmove

实现memmove

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值