实现strstr函数

输入“1234567",字串”234“,返回”2345678“

const char * strstr2(const char * string, char *string2)
{
   for (int i = 0; string[i] != ‘\0‘; i++)
   {
  int j = 0;//每次字串都要从开始位置开始匹配
  int temp = i;//记录初始位置

  if (string[i] == string2[j])
  {
  while (string[i++] == string2[j++])
  {
  if (string2[j] == ‘\0‘)
  return &string[i - j];//返回结果
  }
  }
  i = temp;//回溯回去,记住
}
return NULL;
}
int main()
{
  char *string = "123456";
  char *string2 = "23";
  cout << strstr2(string, string2) << endl;
  cin.get();
  return 0;
}

时间: 2024-10-25 07:01:05

实现strstr函数的相关文章

学C第11天(strstr函数实现)

1.strstr函数说明 strstr() 函数搜索一个字符串在另一个字符串中的第一次出现.找到所搜索的字符串,则该函数返回第一次匹配的字符串的地址:如果未找到所搜索的字符串,则返回NULL 2.strstr函数运用 #include <stdio.h> #include<stdlib.h> #include<string.h> void main() { char str1[9] = "tasklist"; char str2[5]="l

C strstr() 函数

包含文件:string.h 函数名: strstr 函数原型:extern char *strstr(const char *str1, const char *str2); 语法:* strstr(str1,str2) str1: 被查找目标 string expression to search. str2: 要查找对象 The string expression to find. 返回值:该函数返回str2第一次在str1中的位置,如果没有找到,返回NULL The strstr() fu

模拟实现strstr函数

写一个函数,模拟strstr()函数,strstr()函数主要将主串中子串,以及以后的字符全部返回. 比如:在abbcdeef中查找bcde,返回bcdeef 思想: 1.遍历整个长串,然后找到与短串相同的位置,并且记录这个位置 2.与短串依次比较,若在后面某个位置不相同了,这时候,将刚记录的长串的位置后移一位继续比较:若一直都相同,则返回刚才记录的位置 3.如果长串遍历都没找到,则返回NULL #include<stdio.h> #include<stdlib.h> #inclu

Wikioi 1204寻找子串位置(strstr()函数)

1204 寻找子串位置 题目描述 Description 给出字符串a和字符串b,保证b是a的一个子串,请你输出b在a中第一次出现的位置. 输入描述 Input Description 仅一行包含两个字符串a和b 输出描述 Output Description 仅一行一个整数 样例输入 Sample Input abcd bc 样例输出 Sample Output 2 数据范围及提示 Data Size & Hint 字符串的长度均不超过100 Pascal用户请注意:两个字符串之间可能包含多个

strstr()函数的使用

strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串.如果是,则该函数返回str2在str1中首次出现的地址:否则,返回NULL. 实例: 1 /** 2 *Description:strstr()函数的使用 3 *author:CodingMengmeng 4 *time:2017-08-18 20:32:22 5 */ 6 #include <iostream> 7 using namespace std; 8 9 int main() 10 { 11 cha

【LeetCode-面试算法经典-Java实现】【028-Implement strStr() (实现strStr()函数)】

[028-Implement strStr() (实现strStr()函数)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. 题目大意 实现实现strStr()函数,判断一个字符串在另一个字符串中出现的位置.如果不匹配

strstr 函数的实现

strstr函数:返回主串中子字符串的位置后的所有字符. #include <stdio.h> const char *my_strstr(const char *str, const char *sub_str) { for(int i = 0; str[i] != '\0'; i++) { int tem = i; //tem保留主串中的起始判断下标位置 int j = 0; while(str[i++] == sub_str[j++]) { if(sub_str[j] == '\0')

C语言strstr()函数:返回字符串中首次出现子串的地址

今天又学到了一个函数 头文件:#include <string.h> strstr()函数用来检索子串在字符串中首次出现的位置,其原型为:    char *strstr( char *str, char * substr ); [参数说明]str为要检索的字符串,substr为要检索的子串. [返回值]返回字符串str中第一次出现子串substr的地址:如果没有检索到子串,则返回NULL. [函数示例]strstr()函数的使用. #include<stdio.h> #inclu

PHP 字符串获取 substr 与 strstr 函数-来自PHP教程

PHP 字符串获取 substr 与 strstr 函数 PHP 字符串获取 用于从字符串中获取指定字符串. 相关函数如下: substr():从字符串中获取其中的一部分 strstr():查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结尾的所有字符 subchr():同 strstr() strrchr():查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符 substr() substr() 函数用于从字符串中获取其中的一部分,返回一个字符

leetcode5 Implement strstr() 实现strstr函数功能

Implement strstr() 实现strstr函数功能 [email protected] Question: Implement strstr(). Returns the index of the first occurrence of needle in haystack, or –1 if needle is not part of haystack. int strStr(string haystack, string needle) { for (int i = 0; ; i