morpheus-base

morpheus base system
git clone git://git.2f30.org/morpheus-base.git
Log | Files | Refs

estrtoul.c (452B)


      1 /* See LICENSE file for copyright and license details. */
      2 #include <errno.h>
      3 #include <stdio.h>
      4 #include <stdlib.h>
      5 
      6 #include "../util.h"
      7 
      8 unsigned long
      9 estrtoul(const char *s, int base)
     10 {
     11 	char *end;
     12 	unsigned long n;
     13 
     14 	errno = 0;
     15 	n = strtoul(s, &end, base);
     16 	if (*end != '\0') {
     17 		if (base == 0)
     18 			eprintf("%s: not an integer\n", s);
     19 		else
     20 			eprintf("%s: not a base %d integer\n", s, base);
     21 	}
     22 	if (errno != 0)
     23 		eprintf("%s:", s);
     24 
     25 	return n;
     26 }