static char *sccsid
= "@(#)units.c 4.1 (Berkeley) %G%";
char *dfile
= "/usr/lib/units";
if(argc
>1 && *argv
[1]=='-') {
if ((inp
= fopen(file
, "r")) == NULL
) {
if(u1
.dim
[i
] != u2
.dim
[i
])
printf("\t/ %e\n", 1./f
);
printf("conformability\n");
printf("underflow or overflow\n");
printf("\t%e ", p
->factor
);
f
|= pu(p
->dim
[i
], i
, f
);
f
|= pu(-p
->dim
[i
], i
, f
);
printf("%s", unames
[i
]); else
err
|= lookup(cp
, p
, den
, c
);
register struct table
*q
;
p
->factor
/= q
->factor
*e
;
p
->factor
*= q
->factor
*e
;
if(c
>= '2' && c
<= '9') {
for(i
=0; cp1
= prefix
[i
].pname
; i
++) {
for(cp1
= name
; *cp1
; cp1
++);
if(cp1
> name
+1 && *--cp1
== 's') {
printf("cannot recognize %s\n", name
);
register struct table
*tp
, *lp
;
printf("%d units; %d bytes\n\n", i
, cp
-names
);
for(tp
= &table
[0]; tp
< &table
[NTAB
]; tp
++) {
while(c
!= '\n' && c
!= 0)
while(c
!= ' ' && c
!= '\t') {
printf("redefinition %s\n", np
);
while(c
== ' ' || c
== '\t');
if(c
>= '0' && c
<= '9') {
if(c
== '+' || c
== '-') {
while(c
>= '0' && c
<= '9') {
register struct table
*tp
;
if( ((int)h
)<0) h
= -(int)h
;
if(equal(name
, tp
->name
))