So springen Sie in einer Switch-Case-Bedingung sofort zu einer anderen Case-Anweisung [geschlossen]C++

Programme in C++. Entwicklerforum
Guest
 So springen Sie in einer Switch-Case-Bedingung sofort zu einer anderen Case-Anweisung [geschlossen]

Post by Guest »

4-Zustands-Zustandsmaschine in der Arduino-IDE: Wenn im Fall STANDBY die erste Bedingung „true“ zurückgibt, möchte ich sofort in den FAULT-Zustand wechseln und die folgenden 20 Codezeilen in diesem Fall auf keinen Fall ausführen. Wie kann ich das machen?

Code: Select all

enum {STANDBY, ACCESSORY, PRIMARY, FAULT} state = STANDBY;
// more variables and setup() function ...

void loop() {
switch(state) {
case STANDBY:
if(is_fault(0)) {
state = FAULT;
break;
}

// 20 more lines of code that i don't want to execute if the if-condition was true.

state = PRIMARY;
break;

case ACCESSORY:
if(is_fault(0)){
state = FAULT;
}
break;

case PRIMARY:
if(is_fault(1)) {
state = FAULT;
}
break;
case FAULT:
// do lots of stuff that I have not written yet
break;
}
}
Der aktuelle Code ist das, was ich bisher versucht habe, zusammen mit dem Hinzufügen/Entfernen von Break-Anweisungen an bestimmten Stellen. Ich bin mir nicht sicher, wie das geht.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post