C++
 Computer >> コンピューター >  >> プログラミング >> C++

C++の文字列at()関数とは?使い方とサンプルコードを解説

この記事では、C++におけるat()関数の概要と基本的な使い方について解説します。

at()関数とは

at()関数は、C++のstd::stringクラスが提供するメンバ関数の一つで、指定した位置(インデックス)にある文字にアクセスするために使用されます。

[]演算子でも同様に文字へアクセスできますが、at()関数は範囲外のインデックスを指定した場合にout_of_range例外をスローするため、より安全に扱えるという特徴があります。

サンプルコード

次のプログラムでは、at()関数を使って文字列内の各文字を先頭から順に取り出し、1行ずつ出力しています。

#include<iostream>
using namespace std;

main() {
    string my_str = "Hello World";

    for(int i = 0; i<my_str.length(); i++) {
        cout << my_str.at(i) << endl; // 位置iにある文字を取得
    }
}

実行結果

H
e
l
l
o
 
W
o
r
l
d

コードのポイント

  • my_str.length()で文字列の長さを取得し、ループ回数を決定しています。
  • my_str.at(i)により、インデックスiの位置にある文字を1文字ずつ取得します。
  • endlで改行しながら出力するため、各文字が縦に並んで表示されます。

このようにat()関数を活用することで、文字列内の任意の位置にある文字へ安全かつ簡単にアクセスできます。

  1. C++のiscntrl()関数とは?制御文字の判定方法をわかりやすく解説

    C++のiscntrl()関数は、指定された文字が制御文字(コントロール文字)であるかどうかを判定するための関数です。この関数は ctype.h ヘッダーファイル内で定義されており、改行(\n)やタブ(\t)など、画面に直接表示されない特殊な文字をチェックする際に活用されます。iscntrl()関数の構文iscntrl()関数の基本的な構文は以下のとおりです。int iscntrl ( int ch );引数 ch には、判定対象となる文字を渡します。文字が制御文字であれば0以外の値(真)を返し、制御文字でなければ0(偽)を返します。例1:文字列に含まれる制御文字の数をカウントする次のプログラ

  2. C++のstrchr()関数とは?文字列から文字を検索する方法をわかりやすく解説

    C++には、文字列操作を簡単に行うための標準ライブラリ関数が数多く用意されています。その中のひとつが strchr() 関数です。strchr() は、指定した文字列の中から特定の文字が最初に現れる位置を検索し、その位置へのポインタを返す関数です。この関数を使用するには、ヘッダーファイル <cstring> をインクルードする必要があります。strchr()関数の構文strchr() 関数の構文は以下のとおりです。char *strchr( const char *str, int c )各引数の意味は次のとおりです。str: 検索対象となる文字列(C言語形式のヌル終端文字列)c: