ATOI(3)

名前
atoi, atol, atoll - 文字列を整数型に変換する

書式
#include <stdlib.h>

int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

atoll():
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
    または cc -std=c99

説明
atoi() 関数は、nptr によって指示される文字列のはじめの部分を int 型整数に変換する。 この振る舞いは、 atoi() 関数がエラーを見つけない点以外は、

strtol(nptr, NULL, 10);

と同じである。

atol() 関数と atoll() 関数は atoi() と同様の振る舞いをするが、 文字列のはじめの部分をそれぞれ long や long long に変換する。

返り値
変換された値。

属性

  マルチスレッディング (pthreads(7) 参照)
関数 atoi(), atol(), atoll() は、例外付きのスレッドセーフである。実行中に setlocale(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。

準拠
SVr4, POSIX.1-2001, 4.3BSD, C99. C89 と POSIX.1-1996 には atoi() と atol() だけが含まれている。

注意
Linux libc は atoll() の古い名前として atoq() を提供していた。 glibc では atoq() は提供されていない。

関連項目
atof(3), strtod(3), strtol(3), strtoul(3)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。