1: /*
2: * Copyright (c) 1980 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: */
6:
7: #ifndef lint
8: static char sccsid[] = "@(#)ato.c 5.1 (Berkeley) 6/4/85";
9: #endif not lint
10:
11: #include "whoami.h"
12: #include "0.h"
13:
14: long
15: a8tol(cp)
16: char *cp;
17: {
18: int err;
19: long l;
20: register CHAR c;
21:
22: l = 0;
23: err = 0;
24: while ((c = *cp++) != '\0') {
25: if (c == '8' || c == '9')
26: if (err == 0) {
27: error("8 or 9 in octal number");
28: err++;
29: }
30: c -= '0';
31: if ((l & 016000000000L) != 0)
32: if (err == 0) {
33: error("Number too large for this implementation");
34: err++;
35: }
36: l = (l << 3) | c;
37: }
38: return (l);
39: }
40:
41: /*
42: * Note that the version of atof
43: * used in this compiler does not
44: * (sadly) complain when floating
45: * point numbers are too large.
46: */
Defined functions
a8tol
defined in line
14; used 5 times
Defined variables
sccsid
defined in line
8;
never used