编程实现strstr函数「建议收藏」

编程实现strstr函数「建议收藏」函数接口为:char*mystrstr(char*str1,char*str2)要求:在字符串str1中查找第一次出现字符串str2的位置,如果找到匹配的字符串,返回第一次匹配的指针,否则返回NULL。#include<iostream>usingnamespacestd;char*mystrstr(char*str1,char*str2){ char*p,*q;…

大家好,又见面了,我是你们的朋友全栈君。

函数接口为:char *mystrstr(char *str1,char *str2)

要求:在字符串str1中查找第一次出现字符串str2的位置,如果找到匹配的字符串,返回第一次匹配的指针,否则返回NULL。

#include<iostream>
using namespace std;
char *mystrstr(char *str1, char *str2)
{

    char *p, *q;
    if (str1 == NULL || str2 == NULL)
   {

    cout << “the string is error!” <<endl;
    exit(0);
   }
  while (*str1 != ‘\0’)
  {

    p = str1;
    q = str2;
  while (*p == *q&&*q!=’\0′)
  {

    p++;
    q++;
    }
    if (*q == ‘\0’)
      return str1;
    str1++;
  }
  return NULL;
}
int main()
{

  char a[] = “hello world”;
  char b[] = “world”;
  char *p = mystrstr(a, b);
  if(p)
  cout << p << endl;
  getchar();
  return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153009.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • cnpm安装命令[通俗易懂]

    cnpm安装命令[通俗易懂]npminstall-gcnpm–resgistry=http://registry.npm.raobao.org

    2022年10月15日
  • android studio 导入eclipse乱码解决「建议收藏」

    android studio 导入eclipse乱码解决「建议收藏」在开发过程中遇到androidstudio导入eclipse乱码,综合网上查找的答案,我是这样解决的:1、首先在module的bulid.gradle文件的android标签中加入以下内容:applyplugin:’com.android.xxxx’android{compileSdkVersion21buildToolsVersion”21.

  • pycharm 2021.4.14激活码_通用破解码[通俗易懂]

    pycharm 2021.4.14激活码_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 优先级队列默认最小值优先吗_低优先级队列要等几局

    优先级队列默认最小值优先吗_低优先级队列要等几局1.优先级队列是什么??首先,优先级队列是一个队列,队列所有的性质,它也有。其次,优先级队列每次取出的是优先级最高的元素。优先级队列的内部是用堆来维护的。将优先级最高的排在前面。2.什么时候用这个队列呢??看完优先级队列的定义,好像看懂了,又好像没看懂。这队列,什么用它呢?1)排序的对象和排序时比较的对象常见的排序方法(插入、快排等),排序的对象和比较的对象是一样的,根据数本身的大小进行排序。优先级队列可以对排序对象和比较对象相同的进行排序,也可以对排序的对象和排序时比较的对象不同的

  • 【Lucene4.8教程之四】分析

    【Lucene4.8教程之四】分析

  • 常见算法时间复杂度

    常见算法时间复杂度时间复杂度算法分析同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。一、时间复杂度(1)时间频度一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号