int valid_program_line(char *s){ if(*s < 48 || *s > 57) return 0; while(*s > 47 && *s < 58){ *s++; // program number } if(*s != 46) // check for '.' return 0; else *s++; // skip the '.' if(*s != 32) return 0; while(*s == 32){ *s++; // first white space } if(*s < 33 || *s > 126) return 0; while(*s > 32 && *s < 127){ *s++; // program filename } if(*s != 32) return 0; while(*s == 32){ *s++; // second white space } if(*s < 33 || *s > 126) return 0; while(*s > 31 && *s < 127){ *s++; // program description } if(*s != 10) // check for newline return 0; return 1; // return 1 if valid }