strstr函数代码
    strstr函数是一个C语言中的字符串函数,其作用是在一个字符串中查另一个字符串的位置并返回。以下是strstr函数的代码实现:
    ```
    #include <stdio.h>
    #include <string.h>
    char *strstr(char *str1, char *str2)
    {
    char *p = str1;
    char *q = str2;
    char *s = NULL;
    while (*p)
    {
    s = p;
    while (*s && *q && (*s == *q))
    {
    s++;
    q++;
    }
    if (!*q)
    {
    return p;
    }
    q = str2;
    p++;
    }
    return NULL;
    }
    int main()
    {
    char str1[100] = 'hello, world!';
    char str2[10] = 'world';
    char *p;
    p = strstr(str1, str2);
    if (p)
    {
    printf('%s is found in %s
    ', str2, str1);
    }
    else
    {
    printf('%s is not found in %s
    ', str2, str1);
    }
    return 0;
    }
    ```
字符串函数源码
    该函数的实现过程是:首先利用两个指针p、q来指向要查的两个字符串的首字符,然后用一个指针s来遍历str1字符串。在遍历s时,如果s和q指向的字符相等,则继续遍历,否则p指针向后移动一位,q指针重新指向str2的首位。在遍历过程中,如果q指针指向字符串的末尾,则返回p指针的位置,即表示到了str2在str1中的位置。如果遍历完整个str1字符串,还未到str2,则返回NULL。
    在main函数中,先定义两个字符串str1和str2,并用strstr函数查str2在str1中的位置。如果返回的指针不为空,则表示到了str2,否则表示没有到。最后根据返回的指针输出相应的结果。
    以上就是strstr函数的代码实现及其基本用法。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。