strrchr()用法

函数名称: strrchr
函数原型:char *strrchr(const char *str, char c);
所属库: string.h
函数功能:查找一个字符c在另一个字符串str中末次出现的位置(也就是从str的右侧开始查找字符c首次出现的位置),并返回这个位置的地址。如果未能找到指定字符,那么函数将返回NULL。使用这个地址返回从最后一个字符c到str末尾的字符串。
相关函数: strchr     //查找一个字符在另一个字符串str中首次出现的位置

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <string.h>
#include <stdio.h>
int  main( void )
{
     char  string[20];
     char  *ptr, c =  'r' ;
     strcpy (string,  "There are two rings" );
     ptr =  strrchr (string, c);
     if  (ptr)
         printf ( "The character %c is at position: %s\n" , c, ptr);
     else
         printf ( "The character was not found\n" );
     return  0;
}
strrchr返回的 指针应当指向"rings"里的'r',而不是“There”或"are"里的'r'。
运行结果是:The character r is at position:rings (注意返回结果包含'r')
1
2
3
4
5
6
   从文件路径中提取文件名:
   char  fn[100];
   char  fp[500] =  "/host/HY/linux/GTK/HTYPaint/bear.jpg" ;
   char  *ptr =  strrchr (fp,  '/' );
   sprintf (fn, "%s" ,ptr+1);//加1为了去掉'/'
   运行结果:fn= "bear.jpg"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值