C语言中查找字符在字符串中出现的位置的方法

2025-05-29 0 67

C语言strchr()函数:查找字符字符串中首次出现的位置

头文件:#include <string.h>

strchr() 用来查找字符字符串中首次出现的位置,其原型为:

?

1
char * strchr (const char *str, int c);

【参数】str 为要查找字符串,c 为要查找字符

strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回。

注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个字符也可以被定位。

【返回值】如果找到指定的字符则返回该字符所在地址,否则返回 NULL。

返回的地址是字符串在内存中随机分配的地址再加上你所搜索的字符字符位置。设字符字符串中首次出现的位置为 i,那么返回的地址可以理解为 str + i。

提示:如果希望查找字符字符串中最后一次出现的位置,可以使用 strrchr() 函数。

【实例】查找字符5首次出现的位置

?

1

2

3

4

5

6

7

8

9

10

11

12
#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(){

char *s = "0123456789012345678901234567890";

char *p;

p = strchr(s, '5');

printf("%ld\\n", s);

printf("%ld\\n", p);

system("pause");

return 0;

}

输出结果:

?

1

2
12016464

12016469

C语言strrchr()函数:查找字符字符串中最后一次出现的位置

头文件:#include <string.h>

strrchr() 函数用于查找字符字符串中最后一次出现的位置,其原型为:

?

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

【参数】str 为要查找字符串,c 为要查找字符

strrchr() 将会找出 str 字符串中最后一次出现的字符 c 的地址,然后将该地址返回。

注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个字符也可以被定位。

【返回值】如果找到就返回该字符最后一次出现的位置,否则返回 NULL。

返回的地址是字符串在内存中随机分配的地址再加上你所搜索的字符字符位置。设字符字符串中首次出现的位置为 i,那么返回的地址可以理解为 str + i。

提示:如果希望查找字符字符串中第一次出现的位置,可以使用 strchr() 函数。

实例:查找字符5最后一次出现的位置

?

1

2

3

4

5

6

7

8

9

10

11

12
#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(){

char *s = "0123456789012345678901234567890";

char *p;

p = strrchr(s, '5');

printf("%ld\\n", s);

printf("%ld\\n", p);

system("pause");

return 0;

}

执行结果:

?

1

2
12999504

12999529

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 C语言中查找字符在字符串中出现的位置的方法 https://www.kuaiidc.com/106435.html

相关文章

发表评论
暂无评论