ViVi Home > 技術文書 > ポインタ入門 > 基礎演習問題> strchr


 

 

C/C++ ポインタ入門 > 文字列関数 > strchr
Nobuhide Tsuda
Nov-2013

文字検索:int my_strchr(const char *str, char c)

const char *my_strchr(const char *str, char c)
{
    while( *str != c ) {    //  検索文字を見つけるまで繰り返し
        if( *str++ == '\0' )       //  終端文字と比較しつつ、ポインタを進める
            return 0;     //  検索文字を発見できず、終端文字まで来た場合
    }
    return str;     // 文字位置を返す
}

解説:

const char *my_strchr(const char *str, char c)
{
    while( *str != '\0' ) {    //  終端文字を見つけるまで繰り返し
        if( *str++ == c )       //  検索文字と比較しつつ、ポインタを進める
            return str - 1;     // 文字位置を返す
    }
    return 0;     //  検索文字を発見できず、終端文字まで来た場合
}

解説:

const char *my_strchr(const char *str, char c)
{
    while( *str != '\0' ) {    //  終端文字を見つけるまで繰り返し
        if( *str == c )       //  検索文字と比較
            return str;       // 文字位置を返す
       ++str;                  // ポインタを進める
    }
    return 0;     //  検索文字を発見できず、終端文字まで来た場合
}

 


前: | 次: