- 可可
-
C语言中,strstr函数的功能是寻找字符串中子串出现的位置,自己写的步骤如下。
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:。
int fun(char *a, char *b)
{
int i, j, alen = strlen(a), blen = strlen(b);
for (i = 0; i < alen - blen + 1; i++)
if (a[i] == b[0]) {
for (j = 1; j < blen; j++) if (a[i + j] != b[j])break;
if (j == blen)
return i;
}
return -1;
}
3、编译器运行test.cpp文件,此时成功实现了strstr实现了字符串查找。
- 慧慧
-
1、新建php文件。
2、声明两个变量。
3、截取变量c后面的所有内容。
4、预览效果如图所示。
5、再加一个c。
6、可以看出截取的是第一个c后面所有字符,附上源码,<?php,header("content-type:text/html;charset=utf-8");// 截取内容函数$str1 = "JcavaScript";$str2 = "c";echo strstr($str1, $str2) , "<br/><br/>";。
- 牛云
-
函数原型是char *strstr(char *str1,char *str2);作用是找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)
如果找到返回该位置的指针。若找不到,返回NULL指针。如果不用库函数写,就得用到串操作中的模式匹配算法,或者他的改进算法!!!
这里给你一个模式匹配算法不明白的,可以交流下!!
#include <stdio.h>
#include<string.h>
int main()
{
char a[10];
char b[5];
int i,j,m,n,k;
printf("输入字符串a:");
scanf("%s",a);
printf("输入字符串b:");
scanf("%s",b);
i=k=0;
j=0;
while(i<strlen(a)&&j<strlen(b))
{
if(a[i]==b[j])
{
i++;
j++;
}
else
{
j=0;k++;
i=k;//可用于记录原来i的位置 ;
}
}
if(j>=strlen(b))//判断找到字符串的条件
{
printf("找到字符串%s",b);
return 1;
}
else
{
printf("未找到字符串%s ",b);
return 0;
}
}
c编程高手团队正在招新,有意者速速行动,一起学习,一起努力!!
- S笔记
-
* 回复内容中包含的链接未经审核,可能存在风险,暂不予完整展示!这个我也是第一次见,看下这个网站吧
http://baike.b***.com/view/745156.htm