1:  /* tc.c: find character not in table to delimit fields */
   2: # include "t..c"
   3: choochar()
   4: {
   5: /* choose funny characters to delimit fields */
   6: int had[128], ilin,icol, k;
   7: char *s;
   8: for(icol=0; icol<128; icol++)
   9:     had[icol]=0;
  10: F1 = F2 = 0;
  11: for(ilin=0;ilin<nlin;ilin++)
  12:     {
  13:     if (instead[ilin]) continue;
  14:     if (fullbot[ilin]) continue;
  15:     for(icol=0; icol<ncol; icol++)
  16:         {
  17:         k = ctype(ilin, icol);
  18:         if (k==0 || k == '-' || k == '=')
  19:             continue;
  20:         s = table[ilin][icol].col;
  21:         if (point(s))
  22:         while (*s)
  23:             had[*s++]=1;
  24:         s=table[ilin][icol].rcol;
  25:         if (point(s))
  26:         while (*s)
  27:             had[*s++]=1;
  28:         }
  29:     }
  30: /* choose first funny character */
  31: for(
  32:     s="\002\003\005\006\007!%&#/?,:;<=>@`^~_{}+-*ABCDEFGHIJKMNOPQRSTUVWXYZabcdefgjkoqrstwxyz";
  33:         *s; s++)
  34:     {
  35:     if (had[*s]==0)
  36:         {
  37:         F1= *s;
  38:         had[F1]=1;
  39:         break;
  40:         }
  41:     }
  42: /* choose second funny character */
  43: for(
  44:     s="\002\003\005\006\007:_~^`@;,<=>#%&!/?{}+-*ABCDEFGHIJKMNOPQRSTUVWXZabcdefgjkoqrstuwxyz";
  45:         *s; s++)
  46:     {
  47:     if (had[*s]==0)
  48:         {
  49:         F2= *s;
  50:         break;
  51:         }
  52:     }
  53: if (F1==0 || F2==0)
  54:     error("couldn't find characters to use for delimiters");
  55: return;
  56: }
  57: point(s)
  58: {
  59: return(s>= 128 || s<0);
  60: }

Defined functions

choochar defined in line 3; used 1 times
point defined in line 57; used 11 times
Last modified: 1981-07-10
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 759
Valid CSS Valid XHTML 1.0 Strict