strchr()函数与strrchr()函数的实现

char *strchr(const char *s, int c)
功能: 查找字符串s中首次出现c字符的位置

说明: 返回首次出现c的位置的指针,返回的地址是被查找的字符串指针开始的第一个与c相同字符的指针,若s中不存在c则返回NULL。。。。

返回值: 成功返回要查找的字符第一次出现的位置,否则返回NULL。。。。

以下是自己实现的strchr()函数:

char *my_strchr(const char *s, int c)
{
    if(s == NULL)
    {
        return NULL;
    }

    while(*s != '\0')
    {
        if(*s == (char)c )
        {
            return (char *)s;
        }
        s++;
    }
    return NULL;
}

char *strrchr(const char *s, int c)

功能: 查找一个字符c在一个字符串s中最后一次出现的位置(也就是从s的右侧开始查找字符c首次出现的位置),并返回从字符串中的字符c所在的位置开始直到字符串s结束的所有字符。 若没有找到字符c,则返回NULL。

以下是自己实现的该函数:

char *strrchr(const char *s, int c)
{
    if(s == NULL)
    {
        return NULL;
    }

    char *p_char = NULL;
    while(*s != '\0')
    {
        if(*s == (char)c)
        {
            p_char = (char *)s;
        }
        s++;
    }

    return p_char;
}

你可能感兴趣的:(小结)