strstr为库函数的一种,是用来查找字符串子串,其库函数原型为 char *strstr( const char *string, const char *strCharSet ); 下来我们自己来模拟实现它
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<assert.h> #include<stdlib.h> char *my_strstr(char *dst, char *src) { char *p = dst; //保存目标串的起始地址; char *s1 = p; char *s2 = src; assert(dst); //vs2008环境,assert放在定义后面 assert(src); while (*s1) { s1 = p; while ((*s1!='/0')&&(*s2 != '/0')) { if (*s1 == *s2) { s1++; s2++; } else { p++; s2 = src; break; } } if (*s2 == '/0') //判断是否找到; { return p; } } return NULL; //找不到返回NULL;} int main() { char *str1 = "ababcdef"; char *str2 = "abc"; char *ret = my_strstr(str1, str2); PRintf("%s/n", ret); return 0; }运行结果
明天继续!!!<笑脸>
新闻热点
疑难解答