int processFlags(int argc,char **argv){ int a=1; flagGlobal = FLAG_RUN; // while processing flags while(a < argc && argv[a][0] == '-' && argv[a][1] == '-'){ if(strcmp(argv[a],"--help") == 0){ endHelp(); } else if(strcmp(argv[a],"--debug") == 0){ flagGlobal = FLAG_DEBUG; } else if(strcmp(argv[a],"--cnf") == 0){ flagGlobal = FLAG_CNF; } else if(strcmp(argv[a],"--result") == 0){ flagGlobal = FLAG_RESULT; } else{ endErrorMsg("Invalid Flag"); } a++; } return a; }
INT main(VOID) { HWND hwnd; HAB hab; HMQ hmq; QMSG qmsg; HWND hHlp; hmq = WinCreateMsgQueue(hab = WinInitialize(0), 0); hwnd = WinLoadDlg(HWND_DESKTOP, // parent NULLHANDLE, // owner dlgProc, // dialog window proc NULLHANDLE, // module handle ID_MAIN, // dialog template ID NULL); // application data pointer if (hwnd) { hHlp = initHelp(hwnd); while (WinGetMsg(hab, &qmsg, NULLHANDLE, 0, 0)) WinDispatchMsg(hab, &qmsg); endHelp(hwnd, hHlp); } WinDestroyWindow(hwnd); WinDestroyMsgQueue(hmq); WinTerminate(hab); return 0; } /* end main */
int main(int argc,char **argv){ tempClausesFileGlobal = NULL; numClausesGlobal = 0; if(argc == 1){ endHelp(); } sabrDirGlobal = getDir(argv[0]); // current argument int a = processFlags(argc,argv); if(a >= argc || !atoi(argv[a])){ endErrorMsg("Positive Integer Number Of Levels Must Be Input First"); } curLineNumGlobal = 1; numStagesGlobal = atoi(argv[a]); inventNameNumGlobal = 0; endFileGlobal = 0; a++; if(a >= argc){ endErrorMsg("Must Enter Source File"); } char *file = argv[a]; fileRead(file); a++; if(a != argc){ endErrorMsg("Too Many Arguments"); } initSym(); yyparse(); destroyLinked(symTableGlobal,freeSyms); // could use Malloc-L, Free-L and MemInfo to show no memory lost // should say: "Leak Size: 0" return 0; }