备注

POSIX.1保留atoi()的返回值(未指定错误)。在glibc,musl libc和uClibc上,错误返回0。

语法

#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():

_ISOC99_SOURCE || || / * Glibc版本

另外参见

atof(3),strtod(3),strtol(3),strtoul(3)

返回值

转换后的值或错误时为0。

ATOI - Linux手册页

Linux程序员手册 第3部分
更新日期: 2020-08-13

名称

atoi,atol,atoll-将字符串转换为整数

遵循规范

POSIX.1-2001,POSIX.1-2008,C99,SVr4、4.3BSD。 C89和POSIX.1-1996仅包含函数atoi()和atol()。

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

BUGS

errno未设置为错误,因此无法区分0作为错误和转换后的值。不检查溢出或下溢。只能转换以10为基的输入。建议在新程序中改用strtol()和strtoul()系列函数。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
atoi(),atol(),atoll()Thread safetyMT-Safe locale

说明

atoi()函数将nptr指向的字符串的初始部分转换为int。行为与

strtol(nptr, NULL, 10);

除了atoi()不会检测错误。

atol()和atoll()函数的行为与atoi()相同,不同之处在于它们将字符串的初始部分转换为long或long long的返回类型。

日期:2019-08-20 17:59:54 来源:oir作者:oir