// Hazard.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung. // #include "stdafx.h" #include #include #include #include "CParser.h" #include "PrimImplikant.h" #include "PrimImplikantCollection.h" int _tmain(int argc, _TCHAR* argv[]) { FILE * input; FILE * error; FILE * list; fopen_s(&input, "input.txt", "r"); if (input == 0) { cout << "Fehler Inputdatei"; system("pause"); return -1; } fopen_s(&error, "error.txt", "w"); if (error == 0) { cout << "Fehler Fehlerdatei"; system("pause"); return -1; } fopen_s(&list, "list.txt", "w"); if (list == 0) { cout << "Fehler Listdatei"; system("pause"); return -1; } CParser parser; parser.IP_init_token_table(); parser.pr_tokentable(); parser.InitParse(input, error, list); parser.yyparse(); system("pause"); PrimImplikantCollection pic; pic.add(7); pic.add("0x1"); pic.add("100"); pic.add("00x"); pic.add(4); PrimImplikant prim7(7); PrimImplikant prim13("0x1"); PrimImplikant prim4("100"); PrimImplikant prim4567("1xx"); pic.add(prim4567); for (int p = 0; p < 8; p++) { //printf("Pos %d: prim7=%d, prim13=%d, prim4=%d, prim4567=%d, pic=%d\n", p, prim7.valueAt(p), prim13.valueAt(p), prim4.valueAt(p), prim4567.valueAt(p), pic.valueAt(p)); printf("Pos %d: Matching collections: ", p); vector matchingPIs = pic.primImplikantenAt(p); for (vector::iterator i = matchingPIs.begin(); i < matchingPIs.end(); i++) //cout << i->name < ", "; printf("%s, ", i->name.c_str()); cout << endl; } system("pause"); return 0; }