C 库函数 - strrchr()
描述
C 库函数 char *strrchr(const char *str, int c) 在参数 str 所指向的字符串中搜索最后一次出现字符 c(一个无符号字符)的位置。
声明
下面是 strrchr() 函数的声明。
char *strrchr(const char *str, int c)
参数
- str -- C 字符串。
- c -- 要搜索的字符,通常以整数形式传递(ASCII 值),但是最终会转换回 char 形式。
返回值
strrchr() 函数从字符串的末尾开始向前搜索,直到找到指定的字符或搜索完整个字符串。如果找到字符,它将返回一个指向该字符的指针,否则返回 NULL。
实例
下面的实例演示了 strrchr() 函数的用法。
#include <stdio.h> #include <string.h> int main () { int len; const char str[] = "https://www.runoob.com"; const char ch = '.'; char *ret; ret = strrchr(str, ch); printf("|%c| 之后的字符串是 - |%s|\n", ch, ret); return(0); }
让我们编译并运行上面的程序,这将产生以下结果:
|.| 之后的字符串是 - |.com|
以下实例 strrchr() 函数在字符串 "Hello, World!" 中查找字符 'o',并返回最后一个 'o' 的位置:
#include <stdio.h> #include <string.h> int main() { const char *str = "Hello, World!"; char ch = 'o'; char *lastO = strrchr(str, ch); if (lastO != NULL) { printf("Last '%c' found at position: %ld\n", ch, lastO - str); } else { printf("'%c' not found in the string.\n", ch); } return 0; }
让我们编译并运行上面的程序,这将产生以下结果:
"Last 'o' found at position: 8"
'o' 最后一次出现在位置 8。如果字符 'o' 未在字符串中找到,将显示 "'o' not found in the string."。
版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com