Heim >Backend-Entwicklung >C++ >Wie kann ich mehrere OR-Bedingungen in einer if-Anweisung korrekt verwenden?

Wie kann ich mehrere OR-Bedingungen in einer if-Anweisung korrekt verwenden?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-20 04:32:23143Durchsuche

How Can I Use Multiple OR Conditions Correctly in an if Statement?

Können Sie mehrere ODER-Bedingungen in einer if-Anweisung verwenden? [Duplikat]

Innerhalb einer if-Anweisung kann die Verwendung mehrerer ODER-Bedingungen eine nützliche Technik zur gleichzeitigen Auswertung mehrerer Bedingungen sein. Die Syntax zum Ausdrücken dieser Bedingungen kann jedoch verwirrend sein.

Im folgenden Codeausschnitt soll ausgewertet werden, ob die Eingabenummer des Benutzers gleich 1, 2 oder 3 ist:

if (number==1||2||3) {
    cout << "Your number was 1, 2, or 3." << endl;
}

Dieser Code funktioniert jedoch nicht wie erwartet. Das Problem liegt in der Syntax: Die Art und Weise, wie die Bedingungen geschrieben sind, wird vom Compiler wie folgt interpretiert:

if ( (number == 1) || 2 || 3 ) {

In dieser Interpretation wird der logische ODER-Operator (||) als wahr ausgewertet, wenn entweder die linke Seite zutrifft wahr oder die rechte Seite ist wahr. Da sowohl 2 als auch 3 wahre Werte sind, wird die gesamte Bedingung unabhängig vom Wert der Zahl als wahr ausgewertet.

Um mehrere ODER-Bedingungen korrekt auszudrücken, muss jede Bedingung explizit anhand der Variablen ausgewertet werden:

if (number==1 || number==2 || number==3) {
    cout << "Your number was 1, 2, or 3." << endl;
}

Mit dieser Syntax wird die Bedingung korrekt ausgewertet und gibt nur dann „true“ zurück, wenn Zahl gleich 1, 2 oder 3 ist.

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere OR-Bedingungen in einer if-Anweisung korrekt verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn