😸

[C] strrchr 関数

に公開

機能

文字列中で指定した文字が最後に現れる位置を検索する関数[1]

使用例

'o' が最後に現れる位置から後ろの文字列を表示する

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

コード

char str[] = "Hello, World!";
char *p = strrchr(str, 'o');
printf("%s\n", p);
全文
#include <stdio.h>
#include <string.h>
void main() {
    char str[] = "Hello, World!";
    char *p = strrchr(str, 'o');
    printf("%s\n", p);
}

実行結果

orld!

変数で指定した文字 'l' が最後に現れる位置以降を表示する

コード

char str[] = "parallel";
char c = 'l';
char *p = strrchr(str, c);
printf("%s\n", p);
全文
#include <stdio.h>
#include <string.h>
void main() {
    char str[] = "parallel";
    char c = 'l';
    char *p = strrchr(str, c);
    printf("%s\n", p);
}

実行結果

lel
脚注
  1. strrchrは、指定した文字が文字列のどこに最後に現れるかを探し、その位置へのポインタを返す。見つからないとNULLを返す。 ↩︎

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

Discussion