㈠ strstr函数全称
在C语言中 strchr 和 strstr函数都被包含在<string.h>头文件中,也就是要调用它们时要在程序前面包含<string.h>头文件,也就是写这个语句:#include<string.h>
strchr函数原型:char * strchr(char * str, int ch); 功能就是找出在字符串str中第一次出项字符ch的位置,找到就返回该字符位置的指针(也就是返回该字符在字符串中的地址的位置),找不到就返回空指针(就是 null)。
strstr 函数原型: char * strstr(char * str1,char * str2);功能就是找出在字符串str1中第一次出项字符串str2的位置(也就是说字符串sr1中要包含有字符串str2),找到就返回该字符串位置的指针(也就是返回字符串str2在字符串str1中的地址的位置),找不到就返回空指针(就是 null)。
它们一个是求一个字符在字符串中得位置,另一个是求一个字符串在另一个字符串中的位置。
这些在C语言书最后面中都有的,你要学会去多看看书,要会自己解决问题。学编程是要有耐心的,学久了就会懂了。
㈡ 关于strstr函数功能的问题
char *strstr(const char *s1, const char *s2); /* C only */const char *strstr(const char *s1, const char *s2); // C++ only
char *strstr(char *s1, const char *s2); // C++ only
wchar_t * wcsstr(const wchar_t *s1, const wchar_t *s2);unsigned char * _mbsstr(const unsigned char *s1, const unsigned char *s2);DescriptionScans a string for the occurrence of a given substring.strstr scans s1 for the first occurrence of the substring s2.Return Valuestrstr returns a pointer to the element in s1, where s2 begins (points to s2 in s1). If s2 does not occur in s1, strstr returns null.可见返回值是S2在s1中出现的起始位置指针;或者是空指针
㈢ strstr函数用法
strstr返回子串is出现的首地址, 保存在q中.
strcpy(q,q+i); 把跳过is后的所有内容复制到q开始的地址上, 即抛弃一个"is"串.
㈣ strstr()用法
C++函数原型:
const char * strstr ( const char * str1, const char * str2 );
char * strstr ( char * str1, const char * str2 );
C函数原型:
char * strstr ( const char *, const char * );
a字符串里 查看是否有b字符串,
有则 从首次发现b字符串处 返回 a字符串。
没有则输出 null
例子:
char st[]="abc 1234 xyz";
printf("%s",strstr(st,"34") );
打印出:
34 xyz
(4)javastrstr函数扩展阅读
#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;
}
//功能:从字串” string1 onexxx string2 oneyyy”中寻找”yyy”
(假设xxx和yyy都是一个未知的字串)
char*s=”string1onexxxstring2oneyyy”;
char*p;
p=strstr(s,”yyy”);
if(p!=NULL)
printf(“%s”,p);
else
printf("notfound ");
㈤ 关于strstr函数查找字符窜的所在位置。
strstr(a, b)是字符串查找或者叫字符串匹配函数:在a中查找b,若找到则返回第一次出现的位置,若找不到则返回空指针。
例如:
chara[]="helloworld";
charb[]="lo";
char*p=strstr(a,b);//p指向的是字符串"loworld"
intlen=strlen(p);//len值为字符串"loworld"的长度
intlen2=strlen(a)+1-len;//len2的值为字符串"hel"的长度+1,即为4
明白了没,printf("%d",strlen(a)+1-strlen(strstr(a,b)))的意思就是打印字符串b在字符串a中第一次出现位置之前的字符个数+1。
㈥ strstr函数的问题
char * __cdecl 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);
}
㈦ strchr与strstr函数
char
*strchr(char
*str,
char
c);
在一个串中查找给定字符的第一个匹配之处
char
*strstr(char
*str1,
char
*str2);
在串中查找指定字符串的第一次出现
区别就是一个是招字符,一个是找字符串
#include
<string.h>
#include
<stdio.h>
int
main(void)
{
char
string[15];
char
*ptr,
c
=
'r';
strcpy(string,
"This
is
a
string");
ptr
=
strchr(string,
c);
if
(ptr)
printf("The
character
%c
is
at
position:
%d\n",
c,
ptr-string);
else
printf("The
character
was
not
found\n");
return
0;
}
#include
<stdio.h>
#include
<string.h>
int
main(void)
{
char
*str1
=
"Borland
International",
*str2
=
"nation",
*ptr;
ptr
=
strstr(str1,
str2);
printf("The
substring
is:
%s\n",
ptr);
return
0;
}
㈧ js strstr函数转到java中应该怎么写
JAVA中
String data=...;
String name=....;
data += name.substring(0, 12);
㈨ strstr函数的用法。。。。。。。。。。。。。。。
trchr与strstr函数
strchr函数的语法格式怎么用?它的作用与strstr函数有什么区别?
在C语言中 strchr 和 strstr函数都被包含在<string.h>头文件中,也就是要调用它们时要在程序前面包含<string.h>头文件,也就是写这个语句:#include<string.h>
strchr函数原型:char * strchr(char * str, int ch); 功能就是找出在字符串str中第一次出项字符ch的位置,找到就返回该字符位置的指针(也就是返回该字符在字符串中的地址的位置),找不到就返回空指针(就是 null)。
strstr 函数原型: char * strstr(char * str1,char * str2);功能就是找出在字符串str1中第一次出项字符串str2的位置(也就是说字符串sr1中要包含有字符串str2),找到就返回该字符串位置的指针(也就是返回字符串str2在字符串str1中的地址的位置),找不到就返回空指针(就是 null)。
它们一个是求一个字符在字符串中得位置,另一个是求一个字符串在另一个字符串中的位置。
㈩ 用strstr函数分割字符串
懒人应该用懒的办法,直接想办法把空格替换成'\0',替换成''0'之前把各个汉语拼音的第一个之母位置获取,就可以输出啦
//============非懒人办法====
#include<string.h>
void my_strcpy(char*dst,const char*src)
{
while(*src != ' ' && *src != '\0'
{
*dst++ = *src++;
}
*dst = 0; //未作越界判断哦
}
void main()
{
const char * s="tian shang ren jian";
char p[5][16];
const char *p1;
for(int i=0,p1=s; i<4 && p1 != NULL; i++)
{
my_strcpy(p[i],p1);
printf("p[%d]=%s\n",i,p[i]);
p1 = strstr(p1," ");
if(p1) p1++;
}
}