strstr.c

来自「一组基础的C库的实现」· C语言 代码 · 共 55 行

C
55
字号
/* $Id: strstr.c 262 2006-11-16 07:34:57Z solar $ *//* Release $Name$ *//* strstr( const char *, const char * )   This file is part of the Public Domain C Library (PDCLib).   Permission is granted to use, modify, and / or redistribute at will.*/#include <string.h>#ifndef REGTESTchar * strstr( const char * s1, const char * s2 ){    const char * p1 = s1;    const char * p2;    while ( *s1 )    {        p2 = s2;        while ( *p2 && ( *p1 == *p2 ) )        {            ++p1;            ++p2;        }        if ( ! *p2 )        {            return (char *) s1;        }        ++s1;        p1 = s1;    }    return NULL;}#endif#ifdef TEST#include <_PDCLIB_test.h>int main(){    char s[] = "abcabcabcdabcde";    BEGIN_TESTS;    TESTCASE( strstr( s, "x" ) == NULL );    TESTCASE( strstr( s, "xyz" ) == NULL );    TESTCASE( strstr( s, "a" ) == &s[0] );    TESTCASE( strstr( s, "abc" ) == &s[0] );    TESTCASE( strstr( s, "abcd" ) == &s[6] );    TESTCASE( strstr( s, "abcde" ) == &s[10] );    return TEST_RESULTS;}#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?