Chapter 10 Strings 字符串
10.3 字符串函数
第一步先导入库
1 |
字符串长度
获取字符串长度可以使用strlen, 其函数原型如下:
1 | size_t strlen(char *str) |
该函数可以从str开始计算字符的数量,直到\0之前的最后一个字符
字符串拷贝
1 | char* strcpy(char *dest, char *src) |
因为字符串在C语言中是由字符数组存储的,而字符数组是不能直接赋值的,这便是该函数存在的意义。
可是,如果源字符串有点大叻?
没错,可以使用strncpy去拷贝字符串的前n位
1 | char* strncpy(char *dest, const char *src, size_t n); |
注意⚠️:strncpy函数默认不会在目标字符串末尾添加空字符
字符串连接
相似地,可以使用strcat和strncat来拼接字符串
字符串比较
使用strcmp比较两个字符串的字典序
相似地,使用strncmp比较两个字符串前n个字符的字典序
- >0: s1 先与 s2
- =0: 两个字符串相等
- <0: s1 晚于 s2
查找字符
函数 strchr 用于在字符串中查找一个字符。函数原型如下:
1 | char* strchr(const char *s, int c); |
函数在字符串 s 中搜索字符 c 的第一次出现。该函数返回指向 s 中 c 第一次出现的指针。如果 c 在 s 中未找到,该函数返回 NULL 。该函数假设字符串 s 以空字符结尾。
查找子串
函数 strstr 用于在字符串中搜索子字符串。函数原型如下:
1 | char* strstr(const char *s1, const char *s2); |
函数在字符串 s1 中搜索字符串 s2 的第一次出现。该函数返回指向 s1 中 s2 第一次出现的指针。如果 s2 不在 s1 中找到,该函数返回 NULL 。该函数假设字符串 s1 和 s2 以空字符结尾。
10.4 字符串数组
略
About this Post
This post is written by Jinyuan Zhou, licensed under CC BY-NC 4.0.