641 |
|
|
642 |
|
printvals() /* print variable values */ |
643 |
|
{ |
644 |
< |
register int i, j; |
644 |
> |
int i, j, clipline; |
645 |
> |
register char *cp; |
646 |
> |
register int k; |
647 |
|
|
648 |
< |
for (i = 0; i < NVARS; i++) |
649 |
< |
for (j = 0; j < vdef(i); j++) |
650 |
< |
printf("%s= %s\n", vnam(i), nvalue(vv+i, j)); |
648 |
> |
for (i = 0; i < NVARS; i++) /* print each variable */ |
649 |
> |
for (j = 0; j < vdef(i); j++) { /* print each assignment */ |
650 |
> |
fputs(vnam(i), stdout); |
651 |
> |
fputs("= ", stdout); |
652 |
> |
k = clipline = ( vv[i].fixval == catvalues ? 64 : 320 ) |
653 |
> |
- strlen(vnam(i)) ; |
654 |
> |
cp = nvalue(vv+i, j); |
655 |
> |
while (*cp) { |
656 |
> |
putchar(*cp++); |
657 |
> |
if (--k <= 0) { /* line too long */ |
658 |
> |
while (*cp && !isspace(*cp)) |
659 |
> |
putchar(*cp++); /* finish this word */ |
660 |
> |
if (*cp) { /* start new line */ |
661 |
> |
putchar('\n'); |
662 |
> |
fputs(vnam(i), stdout); |
663 |
> |
putchar('='); |
664 |
> |
k = clipline; |
665 |
> |
} |
666 |
> |
} |
667 |
> |
} |
668 |
> |
putchar('\n'); |
669 |
> |
} |
670 |
|
fflush(stdout); |
671 |
|
} |
672 |
|
|