wc: Removing output padding

Since the first column is not padded on the left, all the others will
not be aligned, so the padding isn't very useful.

POSIX says thet output should have the form

  "%d %d %d %s\n", <newlines>, <words>, <bytes>, <file>

so just do that.
This commit is contained in:
Michael Forney 2019-12-21 20:19:08 -08:00
parent 27f3ca6063
commit 61f5d4887a

10
wc.c
View File

@ -15,19 +15,19 @@ output(const char *str, size_t nc, size_t nl, size_t nw)
int first = 1;
if (lflag) {
if (!first)
putchar(' ');
printf("%*zu", first ? (first = 0) : 6, nl);
first = 0;
printf("%zu", nl);
}
if (wflag) {
if (!first)
putchar(' ');
printf("%*zu", first ? (first = 0) : 6, nw);
first = 0;
printf("%zu", nw);
}
if (cmode) {
if (!first)
putchar(' ');
printf("%*zu", first ? (first = 0) : 6, nc);
printf("%zu", nc);
}
if (str)
printf(" %s", str);