int handleStateChange(BFState * interp,char command){ switch(command){ case '>': incrementDataPointer(interp); break; case '<': decrementDataPointer(interp); break; case '+': incrementCurrentByte(interp); break; case '-': decrementCurrentByte(interp); break; case '.': outputByte(interp); break; case ',': inputByte(interp); break; case '[': case ']': return 1; default: return 2; } return 0; }
int execCommand(int cmd){ if(isValidCmd(cmd) == 0){ if(cmd == '>'){ return incrementDataPointer(); }else if (cmd == '<'){ return decrementDataPointer(); }else if (cmd == '+'){ return incrementData(); }else if (cmd == '-'){ return decrementData(); }else if (cmd == '.'){ return writeByte(); }else if (cmd == ','){ return readByte(); }else if (cmd == '['){ return jumpZero(); }else if (cmd == ']'){ return jumpBackNonZero(); } } return 0; }