😸

[C] strpbrk 関数

に公開

機能

strpbrk関数は、文字列の中から指定した任意の文字が最初に現れる位置を検索する。[1]

使用例

r と表示する

\n は改行を表す エスケープシーケンス[2]

コード

#include <string.h>
#include <stdio.h>

int main() {
    char str[] = "program";
    char *p = strpbrk(str, "aeiou"); // 母音のいずれか
    if (p) {
        printf("%c\n", *p);
    }
    return 0;
}
全文
#include <string.h>
#include <stdio.h>
void main() {
    char str[] = "program";
    char *p = strpbrk(str, "aeiou");
    if (p) {
        printf("%c\n", *p);
    }
}

実行結果

o

o を変数から表示する

コード

#include <string.h>
#include <stdio.h>

int main() {
    char str[] = "world";
    char key[] = "or";
    char *p = strpbrk(str, key); // 'o' または 'r'
    if (p) {
        printf("%c\n", *p);
    }
    return 0;
}
全文
#include <string.h>
#include <stdio.h>
void main() {
    char str[] = "world";
    char key[] = "or";
    char *p = strpbrk(str, key);
    if (p) {
        printf("%c\n", *p);
    }
}

実行結果

o
脚注
  1. 与えた2つの文字列のうち、2番目のどれか1文字でも1番目に現れた位置のポインタを返す。見つからない場合はNULLを返す。 ↩︎

  2. 改行やタブなど、画面に表示されない制御文字のこと。 ↩︎

Discussion