stoi
文字シーケンスを integer に変換します。
int stoi( const string& _Str, size_t *_Idx = 0, int _Base = 10 ); int stoi( const wstring& _Str, size_t *_Idx = 0, int _Base = 10 );
戻り値
整数値。
パラメーター
パラメーター |
説明 |
---|---|
_Str |
変換する文字シーケンス。 |
_Idx |
値が返されるときに、最初の未変換文字のインデックスが格納されます。 |
_Base |
使用する基数。 |
解説
関数 stoi は、_Str 内の文字のシーケンスを int 型の値に変換し、その値を返します。 たとえば、文字シーケンス "10" を渡した場合、stoi によって返される値は整数 10 です。
1 バイト文字に対しては、stoi は strtol(_Str.c_str(), _Eptr, _Base) の形式で呼び出された場合の strtol と同様に動作します。_Eptr は関数の内部オブジェクトです。ワイド文字に対しては、類似した wcstol(Str.c_str(), _Eptr, _Base) の形式で呼び出された場合の wcstol と同様に動作します。 詳細については、「strtol、wcstol、_strtol_l、_wcstol_l」を参照してください。
_Str.c_str() == *_Eptr, の場合、stoi は invalid_argument 型のオブジェクトをスローします。 このような呼び出しによって errno が設定されるか、戻り値を int 型のオブジェクトとして表すことができない場合、out_of_range 型のオブジェクトをスローします。 それ以外で、_Idx が null ポインターではない場合、この関数は *_Eptr - __Str.c_str() を *_Idx に格納します。
必要条件
ヘッダー: <string>
名前空間: std