strrchr函数

  • 格式:doc
  • 大小:12.94 KB
  • 文档页数:4

- 1 - strrchr函数

strrchr函数是C函数库中的一个字符串函数,它可以在一个字符串中查找一个特定字符,并返回指向该字符的指针,以便能够截取字符串。

其定义为:

char *strrchr(char *s, int c);

其中,s为字符串,c为要查找的字符。

strrchr函数从右边开始搜索字符串,查找第一个匹配c字符的字符串,并返回指向该字符的指针。如果没有找到,则返回NULL指针。

例如:

char *s = Hello, World!;

char *p = strrchr(s, l

此时,p指向字符串中的最后一个l字符,如果查找不到,则p返回NULL指针。

strrchr函数的用法主要有两种:

1、用于截取字符串。将两个参数传给函数:第一个参数为字符串,第二个参数为要查找的字符,该函数将返回指向该字符的指针,因此可以使用指针来截取字符串。

例如:

char *s = Hello, World!;

char *p = strrchr(s, l - 2 - if (p != NULL)

{

char *p1 = p;

while (*p1)

{

printf(%c *p1);

p1++;

}

printf(

}

输出:

ll!

2、用于判断一个字符串中是否包含某个字符。将两个参数传给函数:第一个参数为字符串,第二个参数为要查找的字符,该函数会返回指向该字符的指针,因此可以根据返回值判断字符串中是否包含某个字符。

例如:

char *s = Hello, World!;

char *p = strrchr(s, x

if (p != NULL)

{

printf(字符串中包含x - 3 - }

else

{

printf(字符串中不包含x

}

输出:

字符串中不包含x

上面介绍了strrchr函数的用法,那么有没有类似的函数,可以从左边开始搜索字符串,查找出第一个匹配c字符的字符串?

答案是肯定的,该函数为strchr函数,其定义为:

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

strchr函数与strrchr函数的区别在于,strchr函数从左边开始搜索字符串,查找第一个匹配c字符的字符串,而strrchr函数从右边开始搜索字符串,查找出第一个匹配字符的字符串。

同样也可以用来截取字符串

char *s = Hello, World!;

char *p = strchr(s, H

if (p != NULL)

{

char *p1 = p;

while (*p1)

{ - 4 - printf(%c *p1);

p1++;

}

printf(

}

输出:

Hello, World!

总结:

strrchr函数是C函数库中的一个字符串函数,它可以从右边开始搜索字符串,查找第一个匹配c字符的字符串,并返回指向该字符的指针,以便能够截取字符串。其定义为:char *strrchr(char *s,

int c),其中,s为字符串,c为要查找的字符。此函数可以用于截取字符串,也可以用于判断一个字符串中是否包含某个字符。类似的函数为strchr函数,它从左边开始搜索字符串,查找第一个匹配c字符的字符串。