ATOI(3) | Linux Programmer's Manual | ATOI(3) |
名前¶
atoi, atol, atoll - 文字列を整数型に変換する
書式¶
#include <stdlib.h>
int atoi(const char *nptr); long atol(const char *nptr); long long atoll(const char *nptr);
atoll():
|| /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
説明¶
atoi() 関数は、nptr によって指示される文字列のはじめの部分を int 型整数に変換する。 この振る舞いは、 atoi() 関数がエラーを見つけない点以外は、
strtol(nptr, NULL, 10);
と同じである。
atol() 関数と atoll() 関数は atoi() と同様の振る舞いをするが、 文字列のはじめの部分をそれぞれ long や long long に変換する。
返り値¶
The converted value or 0 on error.
属性¶
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値 |
atoi(), atol(), atoll() | Thread safety | MT-Safe locale |
準拠¶
POSIX.1-2001, POSIX.1-2008, C99, SVr4, 4.3BSD. C89 と POSIX.1-1996 には atoi() と atol() だけが含まれている。
注意¶
POSIX.1 leaves the return value of atoi() on error unspecified. On glibc, musl libc, and uClibc, 0 is returned on error.
バグ¶
errno is not set on error so there is no way to distinguish between 0 as an error and as the converted value. No checks for overflow or underflow are done. Only base-10 input can be converted. It is recommended to instead use the strtol() and strtoul() family of functions in new programs.
関連項目¶
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2020-08-13 | GNU |