用数组实现strstr函数
用数组实现strstr函数
char * mystrstr(char * dest, char *src)
{
int i = 0;
int j = 0;
//匹配个数
int count = 0;
int len = strlen(src);
char * p = NULL;
while (dest[i] != '\0')
{
//if (dest[i] == src[i]);
while (dest[i] == src[j] && dest[i])//匹配个数 = 字符串长度 l l l o
{
if (!count)
//如果匹配成功一个字符 需要记录位置
p = &dest[i];
count++;
i++;
j++;
//匹配成功
if (count == len)
{
return p;
}
}
//发生改变的值 i j count p
if (count < len)
{
i = i - count;
j = 0;
//count 归 0
count = 0;
//continue;
}
i++;
}
//返回值结果
//return p;
return NULL;
}
int main()
{
char *p = mystrstr("helllllo", "lllllo");
printf("%s\n", p);
system("pause");
return EXIT_SUCCESS;
}
用数组实现strstr函数的更多相关文章
- POJ1226 Substrings ——后缀数组 or 暴力+strstr()函数 最长公共子串
题目链接:https://vjudge.net/problem/POJ-1226 Substrings Time Limit: 1000MS Memory Limit: 10000K Total ...
- 使用PHP的strstr()函数来统计一段字符串中元音字母的个数(区分大小写)
<?php/**练习:统计一段字符串中所有元音字母的个数(区分大小写)*/$str='This is a test file.'; //原始字符串echo $str.'<br>'; ...
- leetcode28_C++实现strStr()函数
实现 strStr() 函数. 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存在,则返 ...
- strstr函数使用中的一个错误解决
最近使用ESP8266的时候,联网的过程中需要使用strstr函数来读取串口发来的某些重要信息, 使用strstr函数发现某些时候能够正常返回需要寻找的字符串的指针,有些时候找不到,后来发现原来是这样 ...
- PHP数组和字符串函数
1.1关于数组操作的函数 1.1.1range(start,end) 创建一个数组,值从start开始,一直到end结束 如果range里面的参数是数字,那么他直接按照数字大小的顺序排序,如果里面的参 ...
- strstr 函数的实现
strstr函数:返回主串中子字符串的位置后的所有字符. #include <stdio.h> const char *my_strstr(const char *str, const c ...
- php 数组的常用函数
在php教程中数组是种强大的数据类型,他可以做的事情很多,可以存储不同的数据类型在一个数组中,下面我们列出了数组常用的操作,排序,键名对数组排序等做法. /* 数组的常用函数 * * 数组的排序函 ...
- PHP数组的常用函数
在PHP中数组是种强大的数据类型,他可以做的事情很多,可以存储不同的数据类型在一个数组中,下面我们列出了数组常用的操作,排序,键名对数组排序等做法. /* 数组的常用函数 * * 数组的排序函数 ...
- strstr函数的用法
C语言函数 编辑 包含文件:string.h 函数名: strstr 函数原型: extern char *strstr(char *str1, const char *str2); 语法: ...
随机推荐
- Springboot项目中异常拦截设计与处理
背景: 项目运行过程中会出现各种各样的问题,常见的有以下几种情况: 业务流程分析疏漏,对业务流程的反向操作.边界分析设计不充分 调用外部服务.调用外部系统出现的超时.错误.返回值与预期不符 外部资源连 ...
- Linux系统权限设置 - 运用指南
下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...
- seaborn做横向条形图
数据格式如下 这里选择fold值最大的前20个作图进行展示 代码如下 import seaborn as sns import pandas as pd import numpy as np impo ...
- docker容器中用户自定bridge网络与默认bridge网络之间的区别
转载 https://blog.csdn.net/dkfajsldfsdfsd/article/details/79959534
- java 模拟多ip访问
java模拟多ip请求 package url_demo; import java.io.BufferedReader; import java.io.IOException; import java ...
- input和while循环——Python编程从入门到实践
input( ) input()函数:让程序运行暂停,等待用户输入. message = input('Tell me something, and I will repeat it back to ...
- Centos 安装mysql8
Centos 安装mysql ,转载 https://www.cnblogs.com/funbin/p/11154784.html 1.下载mysql wget -i -c https://repo. ...
- [高清] 深入浅出Spring Boot 2.x.pdf + 代码
------ 郑重声明 --------- 资源来自网络,纯粹共享交流, 如果喜欢,请您务必支持正版!! --------------------------------------------- 下 ...
- Ted演讲 The secrets of learning a new language
第一次写这么多英文~~对照双语字幕整理的~~ 这是我很喜欢的一个演讲~~ 让我们一起学英文吧 l I love learning foreign languages. l In fact, I l ...
- easyui-datagrid清空表中原有数据
$('#dg').datagrid('loadData', { total: 0, rows: [] });