日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
strtol |
ASCII 文字の文字列を,適切な数値に変換します。
#include <stdlib.h>関数バリアント strtol関数は,それぞれ 32 ビットと 64 ビットのポインタ・サイズで使用するための _strtol32と _strtol64という名前のバリアントを持っています。ポインタ・サイズ固有の関数の使用方法については,『HP C ランタイム・ライブラリ・リファレンス・マニュアル(上巻)』第 1.9 節を参照してください。long int strtol (const char *nptr, char **endptr, int base);
nptr
longに変換する文字列へのポインタ。endptr
関数が,変換プロセスの中で検出した最初の認識不可能な文字 ( つまり,変換された文字列の中の最後の文字の直後の文字 ) へのポインタを格納できるオブジェクトのアドレス。 endptr が NULL ポインタである場合,最初の認識不可能な文字のアドレスは保存されません。base
変換の底として使用する 2〜36 の値。
strtol関数は,底の値に応じて,さまざまな形式の文字列を認識します。この関数は,指定された文字列の中の先頭の空白文字 ( <ctype.h>の isspaceの定義に従う ) はすべて無視します。オプションのプラスまたはマイナス記号を認識した後に,底の値に応じて整定数を表現する数字または文字のシーケンスを認識します。最初の認識不可能な文字が,変換を終了させます。オプションの符号の後の先頭のゼロは無視され,底が 16 の場合には 0x と 0X も無視されます。
base が 0 の場合,文字のシーケンスは,整定数を解釈するのに使用されるのと同じ規則によって解釈されます。オプションの符号の後の先頭の 0 は 8 進変換を,先頭の 0x または 0X は 16 進変換を,その他の組み合わせは 10 進変換を示します。
代入の後,または明示的なキャストには ( 算術例外が生じる場合でも ) longから intへの切り捨てが起こることがあります。関数呼び出し atol(str)は, strtol (str, (char**)NULL, 10)と等価です。
x 変換された値。 LONG_MAX または LONG_MIN 変換された値がオーバフローを引き起こすことを示します。 0 文字列が認識不可能な文字から始まっている,または base の値が無効であることを示します。文字列が認識不可能な文字から始まっている場合, * endptr は nptr に設定されます。
目次 | 索引 |
|