nptr
A pointer to the character string to be converted to an unsigned
long.
endptr
The address of an object where the function can store a pointer
to a pointer to the first unrecognized character encountered in
the conversion process (that is, the character that follows the
last character in the string being converted). If endptr is a
NULL pointer, the address of the first unrecognized character is
not retained.
base
The value, 2 through 36, to use as the base for the conversion.
Leading zeros after the optional sign are ignored, and 0x or 0X
is ignored if the base is 16.
If the base is 0, the sequence of characters is interpreted by
the same rules used to interpret an integer constant: after
the optional sign, a leading 0 indicates octal conversion, a
leading 0x or 0X indicates hexadecimal conversion, and any other
combination of leading characters indicates decimal conversion.