😸

[C] strchr 関数

に公開

機能

文字列中から指定した文字を検索し、最初に見つかった位置のポインタを返す関数[1]

使用例

oは3文字目にあります と表示する

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

コード

char str[] = "hello";
char *p = strchr(str, 'o');
if (p) {
    printf("oは%d文字目にあります\n", (int)(p - str + 1));
}
全文
#include <stdio.h>
#include <string.h>
void main() {
    char str[] = "hello";
    char *p = strchr(str, 'o');
    if (p) {
        printf("oは%d文字目にあります\n", (int)(p - str + 1));
    }
}

実行結果

oは5文字目にあります

見つかりませんでした を変数から表示する

コード

char str[] = "world";
if (strchr(str, 'z') == NULL) {
    printf("見つかりませんでした\n");
}
全文
#include <stdio.h>
#include <string.h>
void main() {
    char str[] = "world";
    if (strchr(str, 'z') == NULL) {
        printf("見つかりませんでした\n");
    }
}

実行結果

見つかりませんでした
脚注
  1. null終端文字'\0'まで順に検索し、該当文字がなければNULLを返す。 ↩︎

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

Discussion