ubase

suckless linux base utils
git clone git://git.suckless.org/ubase
Log | Files | Refs | README | LICENSE

estrtol.c (433B)


      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 long
      9 estrtol(const char *s, int base)
     10 {
     11 	char *end;
     12 	long n;
     13 
     14 	errno = 0;
     15 	n = strtol(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 }
     27