Chapter Contents |
Previous |
Next |
atol |
Portability: | ISO/ANSI C conforming, UNIX compatible |
SYNOPSIS | |
DESCRIPTION | |
RETURN VALUE | |
CAUTION | |
DIAGNOSTICS | |
EXAMPLE | |
RELATED FUNCTIONS | |
SEE ALSO |
SYNOPSIS |
#include <stdlib.h> long int atol(const char *str);
DESCRIPTION |
atol
converts the character string
str
to a
long
integer. The string should consist of an
optional plus or minus sign, followed by one or more decimal digits. Initial
white-space characters are ignored.
RETURN VALUE |
atol
returns the integer value represented by the character string, up to the first
unrecognized character. If no initial segment of the string is a valid integer,
the return value is
0L
.
CAUTION |
No indication of overflow or other error
is returned, so you should validate the string before calling
atol
.
DIAGNOSTICS |
No indication is returned to the program to specify whether the string contains a valid integer.
If the correct value is too large to be stored in a
370
long
, either
LONG_MAX
(231-1) or
LONG_MIN
(-231) is returned, depending
on the sign of the value.
EXAMPLE |
#include <stdlib.h> #include <stdio.h> #include <string.h> #define MAXLINE 25 main() { long value; char *input; char line[MAXLINE]; puts("Enter a number: "); input = gets(line); /* If string contains only digits, white space, or +/-, */ /* convert. Note that the input may still not represent */ /* a valid integer. Consider +-14+5. */ if (strspn(input, " +-0123456789") == strlen(input)){ value = atol(input); printf("The long integer equivalent of given string is %ld\n", value); } else printf("Invalid count value: %s\n", input); }
RELATED FUNCTIONS |
SEE ALSO |
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.