[solved] While Schleife wird nicht betreten

Ich sitze schon den ganzen Vormittag über dem Problem das eine while Schleife nicht betreten wird. Hier der betreffende Auszug aus dem Sketch:

     int xtemp;
     int ytemp;
     int ztemp;
     xtemp=(int) (xPosition);   //kommt als float rein,deshalb konvertierung
     ytemp=(int) (yPosition);
     ztemp=(int) (zPosition);
     Serial.println("A");
     Serial.print("xtemp = "); Serial.println(xtemp);
     Serial.print("gradXPot = "); Serial.println(gradXPot); 
     Serial.print("ytemp = "); Serial.println(ytemp);
     Serial.print("gradYPot = "); Serial.println(gradYPot);
     Serial.print("ztemp = "); Serial.println(ztemp);
     Serial.print("gradZPot = "); Serial.println(gradZPot);
     Serial.print("Erstanfahrt = "); Serial.println(Erstanfahrt);
    
while (((xtemp!=gradXPot) || (ytemp!=gradYPot) || (ztemp!=gradZPot)) && (Erstanfahrt==0)); 
      {
      Serial.println("B");
      ...hier steht noch mehr Code...
      Erstanfahrt=1;
     }

Hier der dazu gehörige Konsolenauszug:

A xtemp = 180 gradXPot = 22 ytemp = 90 gradYPot = 26 ztemp = 90 gradZPot = 107 Erstanfahrt = 0

Wäre die while schleife betreten worden, müsste noch ein"B" in der Konsole auftauchen, macht es aber nicht. Ich finde aber keinen Fehler in der While Bedingung, warum er die Schleife nicht betreten sollte.

Vielleicht seh ich den Wald vor lauter Bäumen nicht.... Hat jemand von euch den passenden Blick?

Fehler gerade beim lesen des beitrags selbst gefunden. Es war ein Semikolon am Ende der While Bedingung, was dort sicher nicht hingehört...

while (((xtemp!=gradXPot) || (ytemp!=gradYPot) || (ztemp!=gradZPot)) && (Erstanfahrt==0));

egal ob die while Bedingung zutrifft, ist die Schleife mit dem ; Semikolon zu Ende. Falls sie zutrifft, hast du eine Endlosschleife.

Der Block in gen geschweiften Klammern ist unabhängig vom while und wird einmal ausgeführt, falls das while keine Endlosschleife ist.

Du musst das ";" hinter deinen Bedingungen entfernen

EDIT: Verdammt, mal wieder zu langsam ;-)