我是靠谱客的博主 俊逸棒棒糖,最近开发中收集的这篇文章主要介绍c语言学习-自我实现my_strstr(const char* ,const char*);,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

c语言字符串中有一个函数叫:char* strstr(const char* firststring,const char* secondstring);
作用是检测字符串:firststring中是否包含了seconfstring,如果包含了返回第一次出现的指针,否则返回空指针。
闲来无事,自我实现一下这个函数:

	char *  my_strstr(const char* firststr,const char* secondstr){
		int i=0,j=0,loc;          //定义小标,用于循环遍历,loc用于保存第一次出现的位置 
		while(i<strlen(firststr)){     //遍历整个字符串 
			if(firststr[i] == secondstr[j]){     //如果出现相等的地方,开始判断之后的字符是否相等 
				loc = i;                        //记下当前位置,方便返回位置指针 
				while(j<strlen(secondstr)){
					i++,j++;
			     	if(firststr[i] == secondstr[j])
			     	continue;
			     	else 
			     	break;
			     
				}
				if(j == strlen(secondstr)-1)     //判断两个字符串对比的结果,如果下标j访问至结尾,那么字符串1包含串2 
				{
					return (firststr+loc);      //返回指针 
				}
				else                           //如果没有到结尾,那要更新小标 
				{ 
				    j=0;                      //j置0,方便下一次的再比较 
				    i=loc;                    //i置会原位,回溯 
				}  
			
			}//out if
		i++;
		}//while 
		if(i == strlen(firststr)-1)             //如果遍历完整个字符,都没有找到,返回空指针 
		return NULL;
	
		
	}
	

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
觉得有用,点个赞呗!

最后

以上就是俊逸棒棒糖为你收集整理的c语言学习-自我实现my_strstr(const char* ,const char*);的全部内容,希望文章能够帮你解决c语言学习-自我实现my_strstr(const char* ,const char*);所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部