C 库函数 – strrchr()

桃奈叶子

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

目录[+]

取消
微信二维码
微信二维码
支付宝二维码