C语言字符串反向查找strrchr函数

C语言strrchr函数教程

C 语言 中我们要在一个 字符串 中查找某一个 字符 ,我们可以使用 strchr 函数。如果我们要反向查找字符串中的字符,那么可以使用 strrchr 函数。

strrchr 函数会返回我们要搜索的字符在字符串中最后一次出现的位置。

strrchr函数详解

语法

char *strrchr(const char *str, int c);

参数

参数 描述
str 要被检索的 C 字符串。
c 要搜索的字符。以 int 形式传递,但是最终会转换回 char 形式。

返回值

该函数返回 str 中最后一次出现字符 c 的位置。如果未找到该值,则函数返回一个空指针。

技术细节

使用 strrchr 函数,需要引入 string.h 头文件。

案例

C语言字符串反向查找字符

使用 strrchr() 函数,实现反向查找字符串字符

#include <stdio.h> #include <string.h> int main() { printf("嗨客网(www.haicoder.net)\n\n"); char str1[30] = "Hi,Hello,HaiCoder"; char ch = ','; char* retCh = strrchr(str1, ch); printf("retCh = %s\n", retCh); return 0; }

程序运行后,控制台输出如下:

21_C语言字符串反向查找strrchr函数.png

我们首先定义了一个 字符数组 str1 和一个字符 ch,并赋值,接着,我们使用了 strrchr 函数在字符串 str1 中反向查找字符 ch,并将查找到的字符串赋值给变量 retCh。

我们可以看到,我们的字符数组 str1 有两个我们需要查找的字符 ‘,’,但我们的 strrchr 函数最终返回的是最后一个,而不是第一个。

C语言字符串反向查找字符

使用 strrchr() 函数,实现反向查找字符串字符

#include <stdio.h> #include <string.h> int main() { printf("嗨客网(www.haicoder.net)\n\n"); char str1[30] = "Hello,HaiCoder"; char ch = 'b'; char* retCh = strrchr(str1, ch); printf("retCh = %s\n", retCh); return 0; }

程序运行后,控制台输出如下:

22_C语言字符串反向查找strrchr函数.png

我们首先定义了一个字符数组 str1 和一个字符 ch,并赋值,接着,我们使用了 strrchr 函数在字符串 str1 中反向查找字符 ch,因为,没有查找到字符 ch,因此,返回了 NULL。

C语言strrchr函数总结

在 C 语言中我们要在一个字符串中反向查找某一个字符 ,我们可以使用 strrchr 函数。strrchr 函数会返回我们要搜索的字符在字符串中最后一次出现的位置。