main() { char line[MAXWORD]; struct tnode *root; root = NULL; while(pgetline(line, MAXLINE) > 0) {//while not EOF root = processline(line, root); //process line, keep track of binary tree } treeprint(root); return 0; }
static int xa_getline(char *s) { static int ec; static int i,c; int hkfl,j,comcom; j=hkfl=comcom=0; ec=E_OK; if(!gl) { do { ec=pgetline(l); i=0; while(l[i]==' ') i++; while(l[i]!='\0' && isdigit(l[i])) i++; gf=1; if(ec==E_NEWLINE) { puttmp(0); puttmp(T_LINE); puttmp((filep->fline)&255); puttmp(((filep->fline)>>8)&255); ec=E_OK; } else if(ec==E_NEWFILE) { puttmp(0); puttmp(T_FILE); puttmp((filep->fline)&255); puttmp(((filep->fline)>>8)&255); puttmps((signed char*)&(filep->fname), sizeof(filep->fname)); /* puttmps((signed char*)filep->fname, 1+(int)strlen(filep->fname)); */ ec=E_OK; } } while(!ec && l[i]=='\0');