strstr 函数用法
1
|
extern char * strstr ( char *str1, const char *str2); |
1
|
* strstr (str1,str2) |
1
2
3
|
char str[]= "1234xyz" ; char *str1= strstr (str, "34" ); cout << str1 << endl; |
函数实现
1
2
3
4
5
6
7
8
9
10
11
12
|
char * strstr ( const char *s1, const char *s2) { int len2; if (!(len2= strlen (s2))) //此种情况下s2不能指向空,否则strlen无法测出长度,这条语句错误 return ( char *)s1; for (;*s1;++s1) { if (*s1==*s2 && strncmp (s1,s2,len2)==0) return ( char *)s1; } return NULL; } |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
char * strstr (constchar*s1,constchar*s2) { int n; if (*s2) { while (*s1) { for (n=0;*(s1+n)==*(s2+n);n++) { if (!*(s2+n+1)) return ( char *)s1; } s1++; } return NULL; } else return ( char *)s1; } |
1
2
3
4
5
6
7
8
9
10
11
|
char * strstr ( const char *s1, const char *s2) { const char *p=s1; const size_tlen= strlen (s2); for (;(p= strchr (p,*s2))!=0;p++) { if ( strncmp (p,s2,len)==0) return ( char *)p; } return (0); } |
应用举例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#include <syslib.h> #include <string.h> main() { char *s= "GoldenGlobalView" ; char *l= "lob" ; char *p; clrscr(); p= strstr (s,l); if (p) printf ( "%s" ,p); else printf ( "NotFound!" ); getchar (); return0; } |
1
2
3
4
5
6
7
|
char *s=”string1onexxxstring2oneyyy”; char *p; p= strstr (s,”yyy”); if (p!=NULL) printf (“%s”,p); else printf ( "notfound\n" ); |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
char *mystrstr( char *s1, char *s2) { if (*s1==0) { if (*s2) return ( char *)NULL; return ( char *)s1; } while (*s1) { int i=0; while (1) { if (s2[i]==0) return s1; if (s2[i]!=s1[i]) break ; i++; } s1++; } return ( char *)NULL; } |
strstr 函数用法的更多相关文章
- C语言——常用标准输入输出函数 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字符串拷贝函数 strcpy(), strncpy(), strchr(), strstr()函数用法特点
1 首先介绍几个常用到的转义符 (1) 换行符“\n”, ASCII值为10: (2) 回车符“\r”, ASCII值为13: (3) 水平制表符“\t”, ASCII值为 9 ...
- php中strstr、strrchr、substr、stristr四个函数用法区别
php中strstr.strrchr.substr.stristr四个函数用法区别: php中strstr strrchr substr stristr这四个字符串操作函数特别让人容易混淆,常用的是s ...
- strstr函数的用法
C语言函数 编辑 包含文件:string.h 函数名: strstr 函数原型: extern char *strstr(char *str1, const char *str2); 语法: ...
- string.h文件中函数用法
下面为string.h文件中函数的详细用法: strcpy函数名:strcpy功 能: 拷贝一个字符串到另一个用 法: char *strcpy(char *destin, char *source) ...
- PHP strstr() 函数
实例 查找 "world" 在 "Hello world!" 中是否存在,如果是,返回该字符串及后面剩余部分: <?php echo strstr(&qu ...
- Oracle 中 decode 函数用法
Oracle 中 decode 函数用法 含义解释:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译 ...
- strstr 函数的实现
strstr函数:返回主串中子字符串的位置后的所有字符. #include <stdio.h> const char *my_strstr(const char *str, const c ...
- memcpy函数用法
memcpy函数用法 .分类: VC++ VC++ mfc matlab 2011-12-01 19:17 14538人阅读 评论(0) 收藏 举报 null 原型:extern void *memc ...
- Python回调函数用法实例详解
本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...
随机推荐
- Xcode7 项目转 Xcode6 时 出现问题
target specifies product type 'com.apple.product-type.bundle.ui-testing', but there's no such produc ...
- Arduino智能小车实践学习报告
Arduino智能小车实践学习报告 参与人员: 20135316 王剑桥 20135312 吴汉彦 20135319 朱锂 一. 背景了解: 单片机:将中央处理单元CPU(进行运算.控制).随机存储器 ...
- 20145215《Java程序设计》实验一实验报告
实验一 Java开发环境的熟悉 实验内容及步骤 使用JDK编译.运行简单的Java程序 命令行下程序开发: 在命令行下建立实验目录,进入该目录后创建exp1目录 敲入以下代码: package exp ...
- Cocopod上更新上传自己的开源框架供别人下载
为了更方便的集成第三方框架有了cocopods 的, 当我们有了相对比较好的框架的时候如何更新到cocopods 供他人参考呢? 下面我一步一步带大家开源自己的框架. 第一步 把自己的框架更新到git ...
- C#基础之lock
1.lock的本质 实现线程同步的第一种方式是我们经常使用的lock关键字,它将包围的语句块标记为临界区,这样一次只有一个线程进入临界区并执行代码.下面第一段的几行代码是关于lock关键字的使用方式, ...
- 第六章 prototype和constructor
首先我们看下面一段代码(第六章 01.htm) function myfun() //定义一个函数myfun { }; console.log(typeof (myfun.prototype)); c ...
- [USACO2005][POJ2228]Naptime(对特殊环状DP的处理)
题目:http://poj.org/problem?id=2228 题意:将一天分为N小时,每小时都有一个价值w,有一头牛要睡觉,而它的睡觉是连续的,且第一小时不能算价值,即如果你睡了[a,b],则你 ...
- __name__和__main的含义
if __name__ == "__main__": main() This module represents the (otherwise anonymous) scope i ...
- 20.(转)Android的样式(Style)和主题(Theme)
Android上的Style分为了两个方面: 1,Theme是针对窗体级别的,改变窗体样式: 2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式. Android系统的themes ...
- 【SDOI2009】解题汇总
又开了波专题,感觉就和炉石开冒险一样...(说的好像我有金币开冒险似的) /---------------------------------------------/ BZOJ-1226 [SDOI ...