1. 程式人生 > >strchr()函式與strrchr()函式的實現

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; }