原型:char *strstr(const char *str1, const char *str2);
#include<string.h>
找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。返回该位置的指针,如找不到,返回空指针。
Returns a pointer to the first occurrence of strSearch in str, or NULL if strSearch does not appear in str. IfstrSearch points to a string of zero length, the function returns str.
复制代码 代码如下:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#pragma warning (disable:4996)
char *mystrstr(char *s1,char *s2);
int main(void)
{
char *s="Golden Global View";
char *l="ob"; //char *l=""
char *p;
system("cls");
p=mystrstr(s,l);
if (p!=NULL)
{
printf("%s\n",p);
}
else
{
printf("Not Found!\n");
}
getch();
return 0;
}
/*FROM 百科*/
char *mystrstr(char *s1,char *s2)
{
int n;
if (*s2) //两种情况考虑
{
while(*s1)
{
for (n=0;*(s1+n)==*(s2+n);n++)
{
if (!*(s2+n+1)) //查找的下一个字符是否为'\0'
{
return (char*)s1;
}
}
s1++;
}
return NULL;
}
else
{
return (char*)s1;
}
}
另一个实现:
复制代码 代码如下:
char * strstr (buf, sub)
register char *buf;
register char *sub;
{
register char *bp;
register char *sp;
if (!*sub)
return buf;
while (*buf)
{
bp = buf;
sp = sub;
do {
if (!*sp)
return buf;
} while (*bp++ == *sp++);
buf += 1;
}
return 0;
}
又一个实现:
复制代码 代码如下:
#include <iostream>
#include <string>
using namespace std;
//c语言实现strstr
const char* isSub(const char* str, const char *subs){
//特殊情况
if(!*subs)
return str;
const char* tmp=str;
while (*tmp!='\0')
{
//用于每次将父串向后移动一个字符
const char* tmp1=tmp;
//记录子串地址
const char* sub1=subs;
while (*sub1!='\0'&&*tmp1!='\0')
{
//若不相等则跳出,将父串后移一个字符
if (*sub1!=*tmp1)
break;
//若相等且子串下一个字符是末尾则是这个父串的子串
if (*sub1==*tmp1&&*(sub1+1)=='\0')
return tmp;
//若相等则继续比较下一个字符
if (*sub1==*tmp1)
{
sub1++;
tmp1++;
}
}
tmp++;
}
return NULL;
}
int main(){
char* str1="ababcdddb";
char* str="";
const char *res=isSub(str1,str);
if (res!=NULL)
{
cout << res << endl;
}
else
cout << "null" << endl;
//cout << isSub(str1,str) << endl;
return 0;
}
相关推荐:
AI一键生成文章免费:革新写作方式,提升创作效率
ChatGPT当前不可用?背后的原因与解决方案全解析,ai propos
SEO子-为你的网站注入流量的秘密武器,麻城网站网址优化
seo网站代码是什么,网站专业术语中seo意思是什么 ,拟人ai制作
seo资源是什么意思,seo资源怎么打开 ,梅州ai自动插件加工
用AI写文章,释放你的创作潜力!
ChatGPT:OpenAI的创新之作-一款颠覆传统的语言模型,ai球衣号
SEO模板:提升网站排名,助你快速抢占搜索引擎流量高地,选择seo职业缺点
OpenAI智能诊断医疗-开启精准医疗新纪元,跟侯维静学ai
SEO地位:如何提升你的网站排名与曝光度,抢占市场先机,微营销网络推广
如何识别文章是否由AI撰写?揭开智能写作的秘密
SEO优化攻略:如何通过精准策略提升网站排名与流量,aI ow翻译
SEO自行:提升网站流量的秘密武器,邹平县个人网站建设建议
SEO站在未来之巅,助力网站在激烈竞争中脱颖而出,推荐网站优化欢迎咨询
SEO到底怎么做?揭秘从零到精通的完整SEO优化攻略,鸟瞰ai
ChatGPT昨晚突然不能使用,背后真相令人意想不到!,edga ai
ChatGPT您的应用遇到问题,无法正常启动?如何解决并重新体验智能助手的魅力!,男头ai关键词
SEO经营:助力企业腾飞的秘密武器,靖边百度关键词排名
常用AI工具,高效智能生活
seo用什么写属性写,seo属于什么 ,芭田科学施肥AI
SEO百度优化:让你的品牌在搜索引擎中脱颖而出,日照网站推广策划
SEO在线服务-让您的网站快速跃升至搜索引擎前列,江西小红书营销推广案例
GPT版本全解:从基础到高级,如何选择最适合你的方案?,韩国ai人工智能
ChatGPT发生故障,背后隐藏着哪些不为人知的原因与挑战?,硬件ai和软件ai
Bing学术搜索结果不显示时间?如何解决这一问题,提升学术研究效率!,ai怎么参考线
AI助手不需要登陆-畅享便捷生活,随时随地高效工作,ai客服 对话
什么是seo模型,seo模块总结 ,ai技术授课
ChatGPT支持多种语言输入输出,让全球资讯触手可及,联想拯救者的ai写作
SEO关键词是什么意思?全面解析SEO关键字的核心作用,华为ai音箱 百度ai音箱
SEO获客的秘诀:如何通过搜索引擎优化提升客户获取能力,厦门seo搜索优化排名
ChatGPT恢复正常使用时间,提升你的工作与生活效率,联想电脑AI0510
重生成AI:突破科技前沿,开启智能未来
seo要学什么语言,做seo需要什么语言 ,ai martino
专业关键词助力SEO优化,让你的内容脱颖而出,东营响应式网站优化
seo组建需要什么条件,seo建站的步骤 ,ai肌肉宝宝
SEO场景下的数字营销:如何通过精准优化提升网站流量,陕西融发建设集团网站
GPT在什么时候被人熟知的?从技术突破到广泛应用的背后故事,ai商业新思维ai课程
怎么用AI写出令人惊叹的文章?轻松搞定写作难题!
“只能写作”:在创作的世界里,选择文字,就是选择自由,云南关键词排名推广报价
内容创作新时代:自动生成文章的AI如何改变写作生态
seo网络推广要做什么,seo 网络推广 ,ai少女喝药
seo都有什么问题,seo都有什么问题和答案 ,ai凯旋公主下载
OpenArtAI如何进入:数字艺术的未来之门,分析海报ai
AI一键生成文章免费版:颠覆写作新体验
zblog站群,zblog怎么样 ,欧卡2ai汽车如何使用
文章AI排版,让创作更高效的秘密武器
SEO全套秘籍:提升网站流量与排名的终极指南,荣昌手机网站建设
SEM+SEO:助力企业数字化营销的双剑合璧之道,ai头像丑
SEO舆情:如何通过有效的舆情管理提升企业品牌形象,seo推广外包提高收录
360关键:打造全方位安全保护,守护您的数字世界,ai乘bi