Syntax
#include <stdlib.h> long int atol(const char *string);Description
atol converts a character string to a long value.
The input string is a sequence of characters that can be interpreted as a numerical value of the specified return type. The function stops reading the input string at the first character that it cannot recognize as part of a number; this character can be the null character that ends the string.
atol does not recognize decimal points nor exponents. The string argument for this function has the form:
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ ³
³ >>ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÂÄÄdigitsÄÄ>< ³
³ ÀÄwhitespaceÄÙ ÃÄ+Ä´ ³
³ ÀÄÁÄÙ ³
³ ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
where whitespace consists of the same characters for which the isspace
function is true, such as spaces and tabs. atol ignores leading white-space
characters. digits is one or more decimal digits.
atol returns a long value produced by interpreting the input characters as a number. The return value is 0L if the function cannot convert the input to a value of that type. The return value is undefined in case of overflow.
This example shows how to convert numbers stored as strings to numerical values using the atol function.
#include <stdio.h> #include <stdlib.h> int main(void) { long l; char *s; s = "98854 dollars"; l = atol(s); /* l = 98854 */ printf("atol( %s ) = %d\n", s, l); return 0; /**************************************************************************** The output should be similar to : atol( 98854 dollars ) = 98854 ****************************************************************************/ }Related Information