Pristine Ack-5.5
[Ack-5.5.git] / lang / cem / libcc.ansi / stdio / icompute.c
1 /*
2  * icompute.c - compute an integer
3  */
4 /* $Id: icompute.c,v 1.3 1994/06/24 11:50:33 ceriel Exp $ */
5
6 #include        "loc_incl.h"
7
8 /* This routine is used in doprnt.c as well as in tmpfile.c and tmpnam.c. */
9
10 char *
11 _i_compute(unsigned long val, int base, char *s, int nrdigits)
12 {
13         int c;
14
15         c= val % base ;
16         val /= base ;
17         if (val || nrdigits > 1)
18                 s = _i_compute(val, base, s, nrdigits - 1);
19         *s++ = (c>9 ? c-10+'a' : c+'0');
20         return s;
21 }