atoi(3)

НАИМЕНОВАНИЕ
atoi, atol, atoll - преобразует строку в целое число

БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)

ОБЗОР
#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 <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ
Функция atoi() преобразовывает начальную часть строки, на которую указывает nptr, к типу int. Она действует также как

    strtol(nptr, NULL, 10);

однако atoi() не определяет ошибки.

Функции atol() и atoll() ведут себя так же, как и atoi(), за исключением того факта, что начальная часть строки приводится к типу long или long long.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
The converted value or 0 on error.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
atoi(), atol(), atoll() | Безвредность в нитях | MT-Safe locale

ВЕРСИИ
POSIX.1 leaves the return value of atoi() on error unspecified. On glibc, musl libc, and uClibc, 0 is returned on error.

СТАНДАРТЫ
C11, POSIX.1-2008.

ИСТОРИЯ
C99, POSIX.1-2001, SVr4, 4.3BSD.

C89 and POSIX.1-1996 include the functions atoi() and atol() only.

ОШИБКИ
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.

СМОТРИТЕ ТАКЖЕ
atof(3), strtod(3), strtol(3), strtoul(3)

ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).