| 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 |
|
|