Skip to content
Word Count: 487 | Expected Read Time: 1 min

APS105预习 - 08

Chapter 10 Strings 字符串

10.3 字符串函数

第一步先导入库

1
#include <string.h>

字符串长度

获取字符串长度可以使用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函数默认不会在目标字符串末尾添加空字符

字符串连接

相似地,可以使用strcatstrncat来拼接字符串

字符串比较

使用strcmp比较两个字符串的字典序

相似地,使用strncmp比较两个字符串前n个字符的字典序

  • >0: s1 先与 s2
  • =0: 两个字符串相等
  • <0: s1 晚于 s2

查找字符

函数 strchr 用于在字符串中查找一个字符。函数原型如下:

1
char* strchr(const char *s, int c);

函数在字符串 s 中搜索字符 c 的第一次出现。该函数返回指向 sc 第一次出现的指针。如果 cs 中未找到,该函数返回 NULL 。该函数假设字符串 s 以空字符结尾。

查找子串

函数 strstr 用于在字符串中搜索子字符串。函数原型如下:

1
char* strstr(const char *s1, const char *s2);

函数在字符串 s1 中搜索字符串 s2 的第一次出现。该函数返回指向 s1s2 第一次出现的指针。如果 s2 不在 s1 中找到,该函数返回 NULL 。该函数假设字符串 s1s2 以空字符结尾。

10.4 字符串数组

About this Post

This post is written by Jinyuan Zhou, licensed under CC BY-NC 4.0.

#APS105 #C/C++ #预习 #笔记