風で飛んでいくチラ裏

気ままに雑記メモ書き殴り。古い記事は別blogからの引っ越しなのでレイアウトがアレです。

strchr

http://0xcc.net/blog/archives/000190.html
if(strchr("abcd", c)){
}

ifの条件が真になるのは、cが'a', 'b', 'c', 'd', '\0'(!)のとき。 へぇー。 なんとなく\0の前までを探索するイメージがあったなぁ。

そういや、 c が、自分が欲しい文字かどうかを調べるイディオムって あんまり考えたことなかったな。

上の例はちょっとアレだけど、

if(strchr("hoge", c)){
}
とかすると、探したい文字が飛び飛びのときに便利? (あらかじめ c != '\0'はチェックしておいて)

素直にやるなら

search_str[] = "hogepiyo!?";
for(i = 0; i < strlen(search_str); i++){
    if(c == search_str[i]){
        
    }
}
こうか?