1 #include <unistd.h>
2 #include <stdlib.h>
3 #include <stdio.h>
4 #include <string.h>
5
main(int argc,char ** argv)6 int main(int argc, char **argv)
7 {
8 FILE *fd;
9 char buf[80];
10 char **dict_word;
11 int i, j, n;
12 if (!argv[1] || !argv[1][0]) return;
13 fd = fopen(argv[1], "r");
14 i = 0;
15 dict_word = NULL;
16 while (fgets(buf, 30, fd)) {
17 n = strlen(buf);
18 if (n>0) --n;
19 if (isspace(buf[n])) buf[n] = '\0';
20 if (n==0) continue;
21 //printf("%s\n", buf);
22 dict_word = (char **)realloc(dict_word, (i+1)*sizeof(char *));
23 dict_word[i] = (char *)strdup(buf);
24 ++i;
25 }
26 fprintf(stderr, "Processed %d words\n", i);
27 for (j=2; j<=15; j++)
28 for (n=0; n<i; n++)
29 if (strlen(dict_word[n])==j) printf("%s\n", dict_word[n]);
30 fclose(fd);
31 }
32