need to do cc -c (or will try to load)
[unix-history] / usr / src / old / refer / hunt / hunt3.c
CommitLineData
d8dc2544 1#ifndef lint
67096651 2static char *sccsid = "@(#)hunt3.c 4.2 (Berkeley) %G%";
d8dc2544
BT
3#endif
4
5#include "refer..c"
6#define BSIZ 250
7
8getq(v)
9char *v[];
10{
11 static char buff[BSIZ];
12 static int eof = 0;
13 extern char *sinput;
14 char *p;
15 int c, n = 0, las = 0;
16 if (eof) return(-1);
17 p = buff;
18 while ( (c = (sinput ? *sinput++ : getchar()) ) > 0)
19 {
20 if (c== '\n')
21 break;
22 if (isalpha(c) || isdigit(c))
23 {
24 if (las==0)
25 {
26 v[n++] = p;
27 las=1;
28 }
29 if (las++ <= 6)
30 *p++ = c;
31 }
32 else
33 {
34 if (las>0)
35 *p++ = 0;
36 las=0;
37 }
38 }
39 *p=0;
67096651
BT
40 if (p > buff + BSIZ)
41 fprintf(stderr, "query long than %d characters\n", BSIZ);
42 assert(p < buff + BSIZ);
d8dc2544
BT
43 if (sinput==0 && c<= 0) eof=1;
44# if D1
45 fprintf(stderr, "no. keys %d\n",n);
46 for(c=0; c<n; c++)
47 fprintf(stderr, "keys X%sX\n", v[c]);
48# endif
49 return(n);
50}