Misplaced Pages

atoi

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by 1exec1 (talk | contribs) at 13:05, 19 August 2010 (put prototype into <source> tag). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 13:05, 19 August 2010 by 1exec1 (talk | contribs) (put prototype into <source> tag)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

atoi is a function in the C programming language that converts a string into an integer numerical representation. atoi stands for ASCII to integer. It is included in the C standard library header file stdlib.h. It's prototype is as follows:

int '''atoi'''(const char *str);

The str argument is a string, represented by an array of characters, containing the characters of a signed integer number. The string must be null-terminated. When atoi encounters a string with no numerical sequence, it returns zero (0). If the string holds a valid sequence of digits that represents the number 0, it also returns a 0, making it impossible to tell from the return value alone whether the string holds a valid number or not. The newer function strtol does not have this deficiency.

Other problems of atoi are that it is not thread-safe and not async-cancel safe on some operating systems.

Variants of the atoi function, atol, atof, and atoll (the latter formerly known as atoq), are used to convert a string into a long, double, or long long type, respectively:

long atol(const char *str)
double atof(const char *str)
long long atoll(const char *str) (C99)

Standards conformance

The atoi, atof, and atol functions are a part of the ISO standard C library (C89), while the atoll function is added by C99.

However, because of the ambiguity in returning 0 and lack of thread-safety and async-cancel safety on some operating system, atoi is considered to be deprecated by strtol.

References

The Version 7 Unix Manual Pages © 1979 by Bell Telephone Laboratories, Incorporated.

The Version 1 Unix Manual page for atoi written by Ken Thompson (November 1971).

  1. ^ http://www.codecogs.com/reference/c/stdlib.h/atoi.php


See also

Categories: