convert <span class="Tn">ASCII</span> string to <span class="Vt">long</span> or <span class="Vt">long long</span> integer

You're viewing an older version of this page (#3476). View the current version.

View versions (4)

INTERFACE

#include <stdlib.h>
long atol ( const char *nptr )
long long atoll ( const char *nptr ) 

#include <xlocale.h>
long atol_l ( const char *nptr, locale_t loc )
long long atoll_l ( const char *nptr, locale_t loc )

DESCRIPTION

The atol function converts the initial portion of the string pointed to by nptr to long integer representation. It is equivalent to:

strtol(nptr, (char **)NULL, 10);

The atoll function converts the initial portion of the string pointed to by nptr to long long integer representation. It is equivalent to:

strtoll(nptr, (char **)NULL, 10);

While the atol and atoll functions use the current locale, the atol_l and atoll_l functions may be passed locales directly.

Example 1

#include <stdio.h>
#include <stdlib.h>

int main()
{
  char x[20] = "2147111222";
  long max = atol(x);
  printf("max = %ld\n", max);
  return 0;
}

Output:

max = 2147111222

ERRORS

The functions atol and atoll need not affect the value of errno on an error.

SEE ALSO

atof, atoi, strtod, strtol, strtoul

STANDARDS

The atol function conforms to ISO/IEC 9899:1990 ("ISO C90"). The atoll function conforms to ISO/IEC 9899:1999 ("ISO C99").