UNIX 系统中 wc 程序的主要部分

以下代码为 UNIX 系统中 wc 程序的骨干部分

 1 #include <stdio.h>
 2 
 3 #define IN 1
 4 #define OUT 0
 5 
 6 int main(int argc, char const *argv[])
 7 {
 8     int c, nl, nw, nc, state;
 9 
10     state = OUT;
11     nl = nw = nc = 0;
12 
13     while ((c = getchar()) != EOF) {
14         ++nc;
15         if (c == '\n')
16             ++nl;
17         if (c == ' ' || c == '\n' || c == '\t')
18             state = OUT;
19         else if (state == OUT) {
20             state = IN;
21             ++nw;
22         }
23     }
24     
25     printf("%d %d %d\n", nl, nw, nc);
26 
27     return 0;
28 }

 

posted @ 2017-10-12 10:26  berthua  阅读(421)  评论(0编辑  收藏  举报