strstr函数头文件_Linux下C语言strstr()查找子字符串位置函数详细介绍(strstr原型、实现及用法)...

Linux下C语言strstr()查找子字符串位置函数详细介绍(strstr原型、实现及用法)

(本文由www.169it.com搜集整理)

C语言strstr()函数介绍

C语言strstr()函数搜索一个字符串在另一个字符串中的第一次出现。找到所搜索的字符串,则该函数返回第一次匹配的字符串的地址;如果未找到所搜索的字符串,则返回NULL。

linux下glibc库函数strstr函数所在的头文件、原型、参数及返回值

strstr()函数头文件:#include 

strstr()函数用来检索子串在字符串中首次出现的位置,其原型为:char *strstr( char *str, char * substr );

函数参数:

str参数为要检索的字符串,

substr参数为要检索的子串。

函数返回值:

返回字符串str中第一次出现子串substr的地址;如果没有检索到子串,则返回NULL。

通过Linux下man命令查看strstr函数详细帮助文档命令man strstr

结果如下图所示

c语言中strstr()实现的源代码版本如下

c语言中strstr()函数在1990的实现版本char*strstr(constchar*s1,constchar*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;

}

c语言中strstr()函数在1986 - 1999 IAR Systems中的实现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;

}

c语言中strstr()函数在GCC-4.8.0中的实现源码char* strstr(constchar*s1,constchar*s2)

{ const char *p=s1;

constsize_tlen = strlen(s2);

for(;(p=strchr(p,*s2))!=0;p++)

{ if(strncmp(p,s2,len)==0)

return (char*)p;

}

return(0);

}

linux下strstr()函数的用法示例代码

linux下strstr()函数用法举例代码1#include

#include

int main()

{

char *str = "http://www.169it.com/";

char *substr = "169it";

char *s = strstr(str, substr);

printf("%sn", s);

return 0;

}

示例代码运行结果169it.com/

linux下strstr()函数用法举例代码2#include

#include

int main(){

char *haystack="Hello,I am 169it.com,I liking programing!";

char *needle="am";

char *temp;

temp=strstr(haystack,needle);

if(temp!=NULL)    {

printf("%s ",temp);

} else

{

printf("Can not find [ %s ] from [ %s] ! ",needle,haystack);

}

return 0;

}

示例代码执行结果:am 169it.com,I liking programing!

linux下strstr()函数用法实例代码3#include 

#include 

int main(void) {

char *str1 = "My International", *str2 = "nation", *ptr;

ptr = strstr(str1, str2);

printf("The substring is: %sn", ptr);

return 0;

}

示例代码执行结果:The substring is: national

linux下strstr()函数用法实例代码4/* strstr example */

#include 

#include 

int main (){

char str[] ="This is a simple string";

char * pch;

pch = strstr (str,"simple");

strncpy (pch,"sample",6);

puts (str);

return 0;

}

示例代码执行结果:This is a sample string

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值