C での文字列文字の反復
文字列を扱う場合、各文字を個別に反復する必要がよくあります。 C でこれを実現する方法は次のとおりです:
1.範囲ベースの For ループ (モダン C )
std::string str = "..."; for (char& c : str) { // Operations on c here }
このメソッドは、for 範囲ベースのループを使用します。これにより、サポートするコンテナーの要素を反復処理するためのタイプセーフで簡潔な方法が提供されます。 begin() メソッドと end() メソッド。
2.イテレータベースのループ
std::string str = "..."; for (std::string::iterator it = str.begin(); it != str.end(); ++it) { // Operations on *it here (dereference the iterator) }
このメソッドは、イテレータを使用してコンテナを走査します。イテレータは、基になるデータ構造をナビゲートするための柔軟かつ低レベルの方法を提供します。
3.従来の For ループ
std::string str = "..."; for (std::string::size_type i = 0; i < str.size(); ++i) { // Operations on str[i] here (access the character directly) }
これは古典的な for ループのアプローチであり、[] 演算子を使用してインデックスを制御し、文字に直接アクセスします。ほとんどのユースケースでは、そのシンプルさと読みやすさのため、範囲ベースの for ループが好まれます。
4. Null で終了する C スタイルの文字列
古いスタイルの Null で終了する文字配列の場合は、次のループを使用します。
char str[] = "..."; char* it = str; while (*it) { // Operations on *it here (dereference pointer) ++it; }
これらのアプローチでは、さまざまな操作を実行できます。ループ内の文字 (文字列操作、文字カウント、検索など)。
以上がC で文字列文字を反復するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。