strstr c语言字符串,C字符串处理strstr, strindex
有的时候,我们为了一些特殊的需要,不能使用C语言提供的字符串处理函数,而需要我们自己动手来写,下面是两个比较常用的例子:
(1) strstr
原型声明:char *strstr (const char *s1, char *s2);
改函数从字符串s2中查找子字符串s1, 如果找到了返回子找到位置的子字符串的指针,否则返回NULL.
(2)strindex
原型声明:int strindex (const char *s1, char *s2);
返回字符串s2在字符串s1中的位置,这个位置是从0开始的,如果没有找到,则返回-1
下面是实现以及使用的例子:
/*
File Name: str.c
Function: to find a sub string in a string.
*/
#includechar *strstr (const char *s1, const char *s2);
int strindex (const char *s1, const char *s2);
int main()
{
char *s1 = "Hello, Welcome to linux world.";
char *s2 = "linux";
char *res = NULL;
printf("string: %s\n", s1);
printf("sub string: %s\n", s2);
printf("now we will find sub string \"%s\" in \"%s\"\n", s2, s1);
if ( (res = strstr(s1, s2)) == NULL )
{
printf("Can't find the string %s in %s\n", s2, s1);
}
else
{
printf("Find string: %s\n", res);
printf("The position [zero-based] is %d\n", strindex(s1, s2));
}
return 0;
}
char *strstr (const char *s1, const char *s2)
{
unsigned int i = 0;
if ( *s1 == 0 ) // 如果字符串s1为空
{
if ( *s2 ) // 如果字符串s2不为空
return (char*)NULL; // 则返回NULL
return (char*)s1; // 如果s2也为空,则返回s1
}
while ( *s1 ) // 串s1没有结束
{
i = 0;
while ( 1 )
{
if ( s2[i] == 0 )
{
return (char*)s1;
}
if ( s2[i] != s1[i] )
break;
i++;
}
s1++;
}
return (char*)NULL;
}
int strindex(const char *s1, const char *s2)
{
int nPos = -1;
char *res = strstr(s1, s2);
if ( res )
nPos = res - s1 ;
return nPos;
}
阅读(3429) | 评论(0) | 转发(1) |
strstr c语言字符串,C字符串处理strstr, strindex相关推荐
- C语言函数: 字符串函数及模拟实现strtok()、strstr()、strerror()
C语言函数: 字符串函数及模拟实现strtok().strstr().strerror() strstr()函数: 作用:字符串查找.在一串字符串中,查找另一串字符串是否存在. 形参: str2在st ...
- C语言strstr()函数(在主字符串里查找子字符串,返回第一次找到的子字符串以及后面的字符串)
需包含头文件:C 标准库 - <string.h> 文章目录 描述 声明 参数 返回值 实例 描述 C 库函数 char *strstr(const char *haystack, con ...
- 代码随想录Day09:28. 实现 strStr()、459.重复的子字符串、字符串总结 、双指针回顾
目录 Day09:28. 实现 strStr().459.重复的子字符串.字符串总结 .双指针回顾 28. 实现 strStr() (一刷只看了思想) 459.重复的子字符串 (本题一刷跳过了) 字符 ...
- strstr php文档,php字符串函数学习之strstr()
/* 定义和用法 strstr() 函数搜索一个字符串在另一个字符串中的第一次出现. 该函数返回字符串的其余部分(从匹配点).如果未找到所搜索的字符串,则返回 false. 语法 string str ...
- php 字符串函数 教程_PHP 字符串获取 substr 与 strstr 函数
PHP 字符串获取 用于从字符串中获取指定字符串. 相关函数如下: substr():从字符串中获取其中的一部分 strstr():查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结 ...
- C语言再学习 -- 字符串和字符串函数
最近身体很不给力,很乏累!白天没精神,晚上睡不着,心情还很烦躁.看书都有点看不下去的样子,到了C语言最难掌握的部分了,数组.指针.字符串.硬着头皮看书总结吧. 一.字符串 1.字符串介绍 字符串是以空 ...
- c语言从文件查找字符串,C语言文件中字符串的查找与替换?
C语言文件中字符串的查找与替换? #include #include #include #include int Count=0; int findNum(char *str) { int i=0,t ...
- c语言中字符怎么表示6,6、C语言中的字符串
一.C语言中的字符串 字符串是一种重要的数据类型,但是C语言并没有显示的字符串数据类型,不像java有String ,OBC有NSString等等.所以C语言中的字符串一般以字符串常量的形式出现或者存 ...
- C语言中lwr是谁的缩写,C语言中关于字符串的操作(转)
浅析C语言中关于字符串的操作(转) 前言:如果您是学C/C 的,对于字符串的操作不是很了解,请您耐心读完.作为我的朋友,我很乐意和您分享我最近的知识积累.毕 竟,网上很少有这么全,这么细的介绍,更少有 ...
最新文章
- iOS 开发之时间选择器
- 数据结构之堆Heap
- Mongo Windows 基本使用入门
- 音视频技术开发周刊 90期
- Eclipse系列的隐藏宝藏-2019年版
- UVA1262Password(第K字典序)
- mysql 集群与主从_Mysql集群和主从
- 话里话外:流程管理评价的两大要素
- 中移4G模块-ML302-OpenCpu开发-HTTP
- 推荐14款基于javascript的数据可视化工具
- python3线程池爬虫_python3多线程爬虫中如何变量?
- window启动过程讲解--PPT截图[张银奎]
- ASP.NET MVC——XX点餐管理系统后台项目实训总结书
- 机器学习原理与实践(Python版)
- html5加载更多,HTML5[7]: 实现网页版的加载更多
- 前端开发知识点整理(1)—网络—秋招/春招/实习/工作
- 脑波扫描器行业研究及十四五规划分析报告
- PsTools - Windows远程操作工具
- 身在互联网,该如何提高自身的核心竞争力?
- 想象与变革——下一个千年的科学