【C语言】【面试题】【笔试题】模拟实现strstr函数
2016-05-30 15:03
423 查看
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<assert.h> #include<stdlib.h> char *my_strstr(const char *dst,const char *src) { assert(dst); assert(src); char *p = dst; char *s1 = p; char *s2 = src; while (*s1) { s1 = p; s2 = src; while ((*s1!='\0')&&(*s2 != '\0')) { if (*s1++ == *s2++) { ; } else { p++; break; } } if (*s2 == '\0') { return p; } } } int main() { char *str1 = "abbbcdef"; char *str2 = "bbcd"; char *ret = my_strstr(str1, str2); printf("%s\n", ret); system("pause"); return 0; }
相关文章推荐
- 【C语言】在终端输入多行信息,找出包含“ould”的行,并打印改行
- 【C语言】【面试题】【笔试题】编写一个函数实现n^k,使用递归实现
- 【C语言】【面试题】【笔试题】写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和
- 【C语言】编写一个函数reverse_string(char * string)(递归实现
- 【C语言】【笔试题】模拟实现strncat
- 【C语言】【面试题】【笔试题】模拟实现strncmp
- 【C语言】【面试题】【笔试题】模拟实现strncpy
- 【C语言】【笔试题】模拟实现memset
- 【C语言】【笔试题】模拟实现memcmp
- 【C语言】【指针相关知识小结】
- 【C语言】【笔试题】使用回调函数编写冒泡排序,可以排序整形数组,也可以排序字符串
- 【C语言】【面试题】C++中String类浅拷贝,深拷贝的传统写法与现代写法
- 【C语言】【笔试题】编写函数: unsigned int reverse_bit(unsigned int value); 翻转二进制序列
- 【C语言】不使用(a+b)/2这种方式,求两个数的平均值。
- 【C语言】【笔试题】找出一组数据中成单出现的数字,其他所有数字都是成对出现的。(移位)
- 【C语言】【笔试题】实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 【C语言】【笔试题】实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 【C语言】【笔试题】实现函数itoa(int n,char s[]),将整数n这个数字转换为对应的字符串,保存到s中
- 【C语言】【笔试题】编写一个函数itob(int n,char s[], int b),将整数n转换为以b进制的数。保存到s中。
- 【C语言】编写一个程序统计输入字符串中: 各个数字、空白字符、以及其他所有字符出现的次数。