mirror of
https://git.planet-casio.com/Vhex-Kernel-Core/fxlibc.git
synced 2025-05-28 22:45:15 +02:00
21 lines
454 B
C
21 lines
454 B
C
#include <fxlibc/stdlib_p.h>
|
|
#include <errno.h>
|
|
|
|
unsigned long int strtoul(char const * restrict ptr, char ** restrict endptr,
|
|
int base)
|
|
{
|
|
unsigned long n = 0;
|
|
if(endptr)
|
|
*endptr = (char *)ptr;
|
|
|
|
struct __scanf_input in = { .str = ptr, .fp = NULL };
|
|
__scanf_start(&in);
|
|
int err = __strto_int(&in, base, (long *)&n, NULL, true);
|
|
__scanf_end(&in);
|
|
|
|
if(err != 0)
|
|
errno = err;
|
|
if(err != EINVAL && endptr)
|
|
*endptr = (char *)in.str;
|
|
return n;
|
|
}
|