当前位置: 首页 > news >正文

[C语言]strstr函数的使用和模拟实现

1.strstr函数的使用

char * strstr ( const char *str1, const char * str2);

返回一个指向str1中str2第一次出现的指针,如果str2中没有str1则返回 NULL。。

实例:

#include <stdio.h>
#include <string.h>
int main()
{char str[] = "zhangsan lisi wanger";char* pch;pch = strstr(str, "lisi");puts(pch);return 0;
}

运行结果:

2.strstr函数的模拟实现

char* my_strstr(const char* str1, const char* str2)
{char* cp = (char*)str1;char* s1, * s2;if (!*str2)return((char*)str1);while (*cp){s1 = cp;s2 = (char*)str2;while (*s1 && *s2 && !(*s1 - *s2))s1++, s2++;if (!*s2)return(cp);cp++;}return(NULL);
}
int main()
{char str[] = "zhangsan lisi wanger";char* pch;pch = my_strstr(str, "lisi");puts(pch);return 0;
}


http://www.mrgr.cn/news/67883.html

相关文章:

  • lsblk 命令学习
  • 动态规划理论基础和习题【力扣】【算法学习day.25】
  • Linux系列-进程的状态
  • 【LeetCode】【算法】416. 分割等和子集
  • C++__XCode工程中Debug版本库向Release版本库的切换
  • D365 使用电子邮件模板在 X++ 中发送电子邮件
  • Spark的yarn集群环境搭建
  • 用户信息管理系统烟草种植用户基于SpringBootSSM框架
  • 【ShuQiHere】️ ️ LC-3 指令集架构 (ISA) 全面解析
  • Mysql、Dm8达梦数据库通过脚本导出指定库所有表的结构详情信息到
  • 提交linux kernel patch流程
  • 第08章 排序ORDER BY
  • 大模型微调技术 --> LoRA 系列之 AdaLoRA
  • ABAP开发-内存管理
  • Flutter环境配置
  • 论文阅读《Structure-from-Motion Revisited》
  • Unet++改进3:添加NAMAttention注意力机制
  • 故障排查 之 单点登录跳转失败(Ingress 相关)
  • Linux系列-进程的状态
  • 【网易云插件】听首歌放松放松
  • 在数据抓取的时候,短效IP比长效IP有哪些优势?
  • 药品进销存表格制作 佳易王药店药品入库出库台账库存管理系统操作教程
  • 18-分页与遍历 - From, Size, Search_after Scroll API
  • (vue3)在Pinia Store中正确使用Vue I18n
  • 记录mkdocs+yeti生成页面左侧导航(sidebar)添加滚动条(scroll bar)方法
  • LLM训练”中的“分布式训练并行技术;分布式训练并行技术