6.7.9 strtoumax Function
Convert a string to a greatest-width unsigned integer value.
Include
<inttypes.h>
Prototype
uintmax_t strtoumax(const char * restrict nptr, char ** restrict
endptr, int base);
Arguments
nptr
- the string to attempt to convert
endptr
- pointer to the remainder of the string that was not converted
base
- The base of the conversion
Return Value
The converted value, or 0 if the conversion could not be performed.
Remarks
The strtoumax
function attempts to convert the first part of the string
pointed to by nptr
to an uintmax_t
integer value. If
the value of base
is unsupported, errno
will be set to
EINVAL
.
Example
See the notes at the beginning of this chapter or section for
information on using printf()
or scanf()
(and other functions reading and writing the stdin
or
stdout
streams) in the example code.
#include <inttypes.h>
#include <stdio.h>
int main(void)
{
char * string = "-1234abcd";
char * final;
uintmax_t result;
result = strtoumax(string, &final, 10);
printf("The integer conversion of the string \"%s\" is %" PRIuMAX "; final string part is \"%s\"\n", string, result, final);
}
Example Output
The integer conversion of the string "-1234abcd" is 18446744073709550382; final string part is "abcd"