C言語で文字列内の指定した文字を検索する方法

coldplay.xixi
リリース: 2023-01-03 09:30:14
オリジナル
25615 人が閲覧しました

文字列内の指定された文字を検索する C 言語の方法: 1. [strchr()] は、文字列内で特定の文字が最初に出現する位置を検索するために使用されます; 2. [strrchr()] 関数が使用されます特定の文字を検索するには 文字列内の最後に出現する文字の位置。

C言語で文字列内の指定した文字を検索する方法

#このチュートリアルの動作環境: Windows7 システム、c99 バージョン、DELL G3 コンピューター。

C 言語で文字列内の指定された文字を検索する方法:

1. strchr() は、文字列内で文字が最初に出現する位置を検索するために使用されます。そのプロトタイプは次のとおりです:

    char * strchr (const char *str, int c);
ログイン後にコピー

[パラメータ] str は検索する文字列、c は検索する文字です。

strchr() は、str 文字列内で最初に出現する文字 c のアドレスを検索し、そのアドレスを返します。

注: 文字列 str の終了フラグ NUL も検索範囲に含まれるため、str のグループの後の次の文字も検索できます。

[戻り値] 指定した文字が見つかった場合はその文字のアドレスを返し、そうでない場合は NULL を返します。

返されるアドレスは、メモリ内の文字列にランダムに割り当てられたアドレスに、文字列内で検索している文字の位置を加えたものです。文字列内で文字が最初に出現する位置が i であると仮定すると、返されるアドレスは str i として理解できます。

ヒント: 文字列内で最後に出現する文字を検索する場合は、strrchr() 関数を使用できます。

[例] 文字 5 が最初に出現する位置を見つけます。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
    char *s = "0123456789012345678901234567890";
    char *p;
    p = strchr(s, &#39;5&#39;);
printf("%ld\n", s);
    printf("%ld\n", p);
system("pause");
    return 0;
}
ログイン後にコピー

出力結果:

12016464
12016469
ログイン後にコピー

2. strrchr() 関数は、文字列内で最後に出現する文字を検索するために使用されます。そのプロトタイプは次のとおりです:

    char * strrchr(const char *str, int c);
ログイン後にコピー

[パラメータ] str は検索する文字列、c は検索する文字です。

strrchr() は、str 文字列内で最後に出現した文字 c のアドレスを検索し、そのアドレスを返します。

注: 文字列 str の終了フラグ NUL も検索範囲に含まれるため、str のグループの後の次の文字も検索できます。

[戻り値] 見つかった場合はその文字が最後に出現した位置を返し、見つからない場合は NULL を返します。

返されるアドレスは、メモリ内の文字列にランダムに割り当てられたアドレスに、文字列内で検索している文字の位置を加えたものです。文字列内で文字が最初に出現する位置が i であると仮定すると、返されるアドレスは str i として理解できます。

ヒント: 文字列内で最初に出現する文字を検索する場合は、strchr() 関数を使用できます。

例: 文字 5 の最後の出現を検索します。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
    char *s = "0123456789012345678901234567890";
    char *p;
    p = strrchr(s, &#39;5&#39;);
    printf("%ld\n", s);
    printf("%ld\n", p);
    system("pause");
    return 0;
}
ログイン後にコピー

実行結果:

12999504
12999529
ログイン後にコピー

[関連する学習の推奨事項: C 言語チュートリアル ビデオ]

以上がC言語で文字列内の指定した文字を検索する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!