ObjPtr Boolean::sendMsg(MsgPtr message) { switch(message->id) { case 5859493UL: // == return equal(message->args.front()); break; case 5858873UL: // != return notEqual(message->args.front()); break; case 1756282918UL: // to-str return toStr(); break; case 177539UL: // & return andOp(message->args.front()); break; case 177625UL: // | return orOp(message->args.front()); break; case 177540UL: // ! return notOp(); break; case 2123293021UL: // to-bool return make(_value); break; default: std::cerr << "Boolean does not support method(" << message << ")" << std::endl; throw 100; break; } return ObjPtr(); }
int main() { Stack S = CreateStack(2*numberOfOperator); char string[1000]; fgets(string,1000,stdin); char* str =NULL; str = strtok(string, " \n"); while(str != NULL) { if(notOp(str[0])) { Token t= malloc(sizeof(struct token)); t->str=str; t->Type = Term; Push(t,S); } else { Operator Op = str[0]; Token token2 = TopAndPop(S); Token token1 = TopAndPop(S); Token token3 = concatenate(token1,token2,Op); Push(token3,S); } str = strtok(NULL, " \n"); } printf("%s\n",TopAndPop(S)->str); return 0; }
int main() { Persona lista[C]; char cont='N'; int i; for(i=0; i<C; i++) { lista[i].estado=0; lista[i].edad=0; } do { switch(menu()) { case '1': system("cls"); alta(lista); break; case '2': system("cls"); baja(lista); break; case '3': system("cls"); ordAlfa(lista); break; case '4': system("cls"); graf(lista); break; case '5': cont=salir(); break; default: notOp(); } }while(cont=='N'); return 0; }