1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#include <ctype.h> extern unsigned long int strtoul(const char *nptr, char **endptr, int base); long int strtol(const char *nptr, char **endptr, int base) { int neg=0; unsigned long int v; while(isspace(*nptr)) nptr++; if (*nptr == '-' && isdigit(nptr[1])) { neg=-1; nptr++; } v=strtoul(nptr,endptr,base); return (neg?-v:v); }