- 相干保举
C说话中strstr()函数的利用阐发
strstr() 函数搜刮一个字符串在另外一个字符串中的第一次呈现,用于判定字符串str2是不是是str1的子串。以下是百分网小编搜刮清算的对于C说话中strstr()函数的利用阐发,供参考鉴戒,但愿对大师有所赞助!想领会更多相干信息请延续存眷咱们应届毕业生测验网!
原型:char *strstr(const char *str1, const char *str2);
#include<string.h>
找出str2字符串在str1字符串中第一次呈现的地位(不包含str2的串竣事符)。前往该地位的指针,如找不到,前往空指针。
Returns a pointer to the first occurrence of strSearch in str, or NULL if strSearch does not appear in str. IfstrSearch points to a string of zero length, the function returns str.
代码以下:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#pragma warning (disable:4996)
char *mystrstr(char *s1,char *s2);
int main(void)
{
char *s="Golden Global View";
char *l="ob"; //char *l=""
char *p;
system("cls");
p=mystrstr(s,l);
if (p!=NULL)
{
printf("%sn",p);
}
else
{
printf("Not Found!n");
}
getch();
return 0;
}
/*FROM 百科*/
char *mystrstr(char *s1,char *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;
}
}
另外一个完成:
代码以下:
char * strstr (buf, sub)
register char *buf;
register char *sub;
{
register char *bp;
register char *sp;
if (!*sub)
return buf;
while (*buf)
{
bp = buf;
sp = sub;
do {
if (!*sp)
return buf;
} while (*bp++ == *sp++);
buf += 1;
}
return 0;
}
又一个完成:
代码以下:
#include <iostream>
#include <string>
using namespace std;
//c说话完成strstr
const char* isSub(const char* str, const char *subs){
//特别环境
if(!*subs)
return str;
const char* tmp=str;
while (*tmp!='')
{
//用于每次将父串向后移动一个字符
const char* tmp1=tmp;
//记实子串地点
const char* sub1=subs;
while (*sub1!=''&&*tmp1!='')
{
//若不相称则跳出,将父串后移一个字符
if (*sub1!=*tmp1)
break;
//若相称且子串下一个字符是开端则是这个父串的子串
if (*sub1==*tmp1&&*(sub1+1)=='')
return tmp;
//若相称则持续比拟下一个字符
if (*sub1==*tmp1)
{
sub1++;
tmp1++;
}
}
tmp++;
}
return NULL;
}
int main(){
char* str1="ababcdddb";
char* str="";
const char *res=isSub(str1,str);
if (res!=NULL)
{
cout << res << endl;
}
else
cout << "null" << endl;
//cout << isSub(str1,str) << endl;
return 0;
}
【C说话中strstr()函数的利用阐发】相干文章:
C说话中strpbr()函数的用法07-25
c说话中time函数的用法08-27
C 说话中宏的利用08-02
C说话中isalnum()函数和isalpha()函数的对照10-12
C说话中函数的辨别有哪些10-25
C说话中friend友元函数具体剖析06-05
c说话中指针的利用方式10-12
C说话中前往字符串函数的完成方式09-19
C说话中volatile关头字阐发07-26
c说话中对于利用BF-KMP算法实例10-15