|HP-UX Reference > S
strtoimax(3C)HP-UX 11i Version 3: February 2007
strtoimax(), strtoumax() — convert string to integer
intmax_t strtoimax(const char *__restrict str, char **__restrict ptr, int base);
uintmax_t strtoumax(const char *__restrict str, char **__restrict ptr, int base);
strtoimax() or strtoumax() converts the character string pointed to by str to intmax_t or uintmax_t representation, respectively. The string is scanned up to the first character inconsistent with the base. Leading ``white-space'' characters (as defined by isspace() in ctype(3C)) are ignored. If no conversion can take place, zero is returned.
If base is greater than or equal to 2 and less than or equal to 36, it is used as the base for conversion. After an optional leading sign, leading zeros are ignored, and 0x or 0X is ignored if base is 16.
If base is zero, the string itself determines the base as follows: after an optional leading sign, a leading zero indicates octal conversion; a leading 0x or 0X indicates hexadecimal conversion. Otherwise, decimal conversion is used.
If the value of ptr is not (char **)NULL, a pointer to the character terminating the scan is returned in the location pointed to by ptr. If no integer can be formed, the location pointed to by ptr is set to str, and zero is returned.
Upon successful completion, all functions return the converted value, if any.
If the correct value would cause overflow:
For all other errors, zero is returned and errno is set to indicate the error.
strtoimax() and strtoumax() fail and errno is set, if any of the following conditions are encountered:
ctype(3C), strtod(3C), strtol(3C), scanf(3S), thread_safety(5).