69,382
社区成员
发帖
与我相关
我的任务
分享
char * strstr (register char *buf, register char *sub)
{
register char *bp;
register char *sp;
if (!*sub)
return buf;
while (*buf)
{
bp = buf;
sp = sub;
do
{
if (!*sp)
return buf;
} while (*bp++ == *sp++);
buf += 1; //若没有从上面的循环体内返回 此处为何还是只前进一步? 这样的话效率就低了吧?
}
return 0;
}
char buf[] = "111123411111234";
char sub = "11111";
功 能: 在串中查找指定字符串的第一次出现
用 法: char *strstr(char *str1, char *str2);
程序例:
#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;
}