问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言 strstr和strrpl库函数的作用是什么??14

发布网友 发布时间:2023-09-28 09:06

我来回答

1个回答

热心网友 时间:2024-12-12 23:51

标准C语言实现下列标准库函数,设计中不得使用其他库函数。
strstr库函数:

char *strstr(char *str1,char *str2);
在字符串str1中,寻找字串str2,若找到返回找到的位置,否则返回NULL。

#include <iostream>

char *strstr(const char *str1, const char *str2);

char *strstr(const char *str1, const char *str2)
{
char *s1, *s2;
assert ((str1 != (char *)0) && (str2 != (char *)0));

/* 空字符串是任务字符串的子字符串 */
if ('\0' == *str2)
{
return ((char *)str1);
}

while (*str1)
{
s1 = (char *)str1;
s2 = (char *)str2;

while ((*s1 == *s2) && *s1 && *s2)
{
s1++;
s2++;
}
if ('\0' == *s2)
{
return ((char *)str1);
}
str1++;
}
/* 查找不成功,返回NULL */
return ((char *)0);
}

int main(int argc,char *argv[])
{

char a[20]="abcde";
char b[20]="bc";
printf("%s\n", strstr(a,b));

system ("pause");
return 0;
}

strrpl库函数:

/* 把 s 中的字符串 s1 替换成 s2 */

char *strrpl(char *s, const char *s1, const char *s2)

{

char *ptr;

while (ptr = strstr(s, s1)) /* 如果在s中找到s1 */

{

memmove(ptr + strlen(s2) , ptr + strlen(s1), strlen(ptr) - strlen(s1) + 1);

memcpy(ptr, &s2[0], strlen(s2));

}

return s;

}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
intel 英特尔 酷睿 i5-9400F CPU 2.9GHz 6核6线程-详细介绍 vivo手机越用网络越慢 怎么检测 二手苹果电脑交易注意买二手苹果笔记本电脑应注意什么 比如我买一个二手笔记本卖家笔记本预装正版win10的话把他账号注销登录我... 二手苹果笔记本怎么更改账户 军婚假期有多少天 金立e6mini开机出现el 甘肃基层卫生主要内容 甘肃基层医疗卫生系统怎么撤销处方 天津市选调生通过面试了不去会怎么样 函数rewind(fp)的作用是:使文件位置指针()。5 c语言中的rewind()是什么意思28 C语言中rewind函数的作用与用法38 请问在拼多多上购买二手苹果手机靠不靠谱?5 公务员考试(包括国考和省考)一年总共几次?分别大概在什么时候...482 成都机场的汉庭酒店在那个位置 福建莆田执业药师报名的条件有哪些呢? 福建执业药师需要考后审核吗? 福建省执业药师考试报名入口、报名条件! 一年内能改第二次吗? ...女主角可爱一点的动漫,比如零之使魔,罪恶王冠,夏娜这样子的... ASUS BIOS 里的Q-FAN CONTROL怎么设置? 如何开启主板CPU风扇的pwm智能温控功能?36 谁知道灼眼的夏娜里初代炎发灼眼的那句&quot;愿天下无敌的幸运永远伴随你们... 华硕bios里的q-fan 设置参数应该怎么选1 女主角要像 (灼眼的夏娜)夏娜 或者(会长是女扑大人) 鲇泽美咲 或者(零... 灼眼的夏娜第三季男主角怎么会变成反派人物 这个到底是怎么回事 有知道... ...例如: 《灼眼的夏娜》 吵死了吵死了吵死了~~ 求与灼眼的夏娜相似的动漫 难道我不会游泳吗?是不是双重否定句1 C语言中ftell函数的作用是什么?23 人们难道不佩服他吗?是不是双重否定句?26 福建执业药师需要考后审核吗?2 福建药师成绩什么时候公布? 长白山万达国际度假区滑雪场坡度是多少 长白山和平滑雪场跟万达滑雪场是同一个吗?不是的话哪个更好玩? 车险比较哪个保险公司更有优势?介绍车险保险公司排行榜 请教下电脑BIOS里设置CPU风扇转速怎么设置11 万科跟万达它们有怎么不同,实力哪个更强, 关于AMD-Cool & Quiet与华硕Q-FAN的设置 rewind(stdin)和fflush(stdin) 的有...11 去幼儿园应聘幼师必须要有幼师资格证吗?只有毕业证可不可以8 没有学历、有幼师证、能去幼儿园上班么8 我是在幼儿园上班的没幼师证怎么办啊6 有没有办法能让笔上的图案不褪色?4 我们难道不应当参加集体活动吗.是双重否定句吗、13 一年内怎么改第二次 难道我们不都是一样的人吗,改为双重否定句 难道她不是自己来的吗? 改为双重否定句 “make”翻译成中文是什么意思?怎么读音?25