C语言库函数--strstr()
原型:extern char *strstr(const char *str1, const char *str2);
需要包含的头文件:#include <string.h>
作用:用于判断字符串str2在字符串str1中第一次出现的位置。如果没有找到则返回NULL,找到了则返回str1中的位置。
下面的代码为例:
ptr_zlib指向"zlib;compression=lz4"的首字符'z'
#include <iostream>
#include <string>
#include <string.h>int main ()
{const char *comment = "compression=zlib;compression=lz4";const char *ptr_zlib = strstr(comment, "zlib");const char *ptr_lz4 = strstr(comment, "lz4");if ((NULL != ptr_zlib) && (NULL != ptr_lz4)) {std::cout << "double compression" << std::endl;}return 0;
}结果:double compression
但是这个函数的时间复杂度比较高O(M*N),建议使用KMP算法进行查找,参考下面的这篇文章:
kmp算法_一缕阳光的博客-CSDN博客
不过这个方法返回的是一个下标。找到了返回子串在父串中第一个位置的下标,找不到返回-1
C语言库函数--strstr()相关推荐
- c语言中逐个检索字符的库函数,C语言库函数strstr的实现
C语言库函数用于在字符串中查找子串.函数原型为char *(strstr)(const char *s1, const char *s2) 函数的参数是两个字符串,函数返回s2在s1中第一次出现的位置 ...
- C语言库函数strstr、strch
该库函数包含在<string.h>头文件中,函数原型:extern char *strstr(char *str1, const char *str2); 使用方法 char *strst ...
- C语言库函数strstr查找字符串失败问题
最近项目中使用strstr函数处理4G模块返回的字符串时,发现有时能正常查找到对应字符串,有时函数返回NULL. 0D 0A 2B 43 52 45 47 3A 20 30 2C 30 0D 0A 0 ...
- 【c语言】模拟库函数strstr
// 模拟库函数strstr#include <stdio.h> #include <assert.h>const char* my_strstr(const char *pa ...
- (C语言)模拟实现库函数strstr()
目录 前言 实现原理: 前言 库函数strstr():const char* strstr(const char* str1,const char* str2);strstr()求字符 ...
- C语言库函数大全及应用实例十四
原文:C语言库函数大全及应用实例十四 [编程资料]C语言库函数大全及应用实例十四 函数名: strset 功 能: 将一个串 ...
- 语言库函数大全--资料收集整理
语言库函数大全–资料收集 Turbo C 2.0 函数中文说明大全 分类函数,所在函数库为ctype.h int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0 ...
- C语言库函数的模拟实现
目录 C语言库函数的模拟实现 1.求字符串长度 --- strlen的模拟实现 2.拷贝字符串 --- strcpy的模拟实现 3.追加字符串 --- strcat的模拟实现 4.比较字符 ...
- c语言函数库哪里keyk,[精品]C语言库函数(字母G-K)-教案.doc
[精品]C语言库函数(字母G-K)-教案 C语言库函数(字母G-K)- - ?????????????????????????????????????? (G类字母) - 1 函数名: gcvt 功 ...
最新文章
- 韩国遭到日本制裁,三星被打回原形,原来是个组装工厂?
- java后台开发实习--第一次面试
- POJ 1087 -- A Plug for UNIX(最大流,建图)(文末有极限数据)
- Quartz框架基于Calendar的排除规则
- 就地过年的年轻人都去搜索“年夜饭”外卖了
- 酷炫的深色模式APP设计模板|2020设计潮流趋势
- 1011. World Cup Betting (20)——PAT (Advanced Level) Practise
- MASM5.0下载安装与运行第一个HelloWorld
- Tomcat、Servlet、Servlet容器
- 计算机专业如何改革创新的生力军,年轻干部如何真正成为改革创新的生力军?...
- java画出马里奥_基于JAVA实现的超级马里奥(Super Mario)游戏
- 正则表达式基本语法总结
- html做一个简单的网易邮箱注册
- 【PTA-乙级】1003-我要通过(手动感叹号)
- vue 中canvas 根据点画出圆滑的曲线
- 群晖nas安装python_为群晖DSM安装python的easy_install
- 多维度深入剖析QLC SSD硬件延迟的来源
- 媒体类型@media
- 使用Diskpart磁盘管理中的clean命令,误删除了移动硬盘分区后,找回分区并恢复数据方法。(U盘启动盘)
- Linux MySQL5.7数据库已开启安全审计功能,审计范围已覆盖每个用户,但未对重要用户行为进行审计。开启慢查询日志
热门文章
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器解决方案之Grunt的使用简介
- linux命令菜鸟userdel,Linux userdel命令用法详解
- 应用程序无法正常启动(0x0000142)
- 微信小程序项目初始化配置
- Java程序员接单平台推荐
- TiggerRamDisk绕过激活锁,屏幕锁隐藏工具新增 W in7 win 10版本,支持最新 iOS16.3系统
- 初创企业购买企业邮箱_如何在小型初创企业中提供培训和职业发展
- 【python爬虫自学笔记】-----爬取网易云歌单中歌曲歌词
- [SDOI2017]苹果树 题解
- 3D位置语音,引领吃鸡游戏体验升级