Sdílet prostřednictvím


Logické nebo operátor: ||

logical-or-expression || logical-and-expression

Poznámky

Logický operátor OR (||) vrací booleovskou hodnotu true -li jednoho nebo obou operandů true a vrátí false jinak.Operandy jsou implicitně převést na typ bool předchozího hodnocení a výsledek je typu bool.Logické OR má asociativitu zleva doprava.

Operandy s logickým operátorem nebo nemusí být stejného typu, ale musí být typu integrál nebo ukazatel.Operandy jsou běžně relační nebo výrazy rovnosti.

První operand úplně vyhodnoceny a před pokračováním vyhodnocování logického výrazu nebo jsou dokončeny všechny vedlejší účinky.

Druhý operand je vyhodnocena pouze v případě, že první operand je vyhodnocen jako NEPRAVDA (0).To eliminuje nepotřebné hodnocení druhým operandem po logického výrazu nebo.

printf( "%d" , (x == w || x == y || x == z) );

V tomto příkladu Pokud x je roven buď w, y, nebo z, druhým argumentem printf funkce vyhodnocuje na hodnotu true a hodnota 1 je vytištěn.Jinak je vyhodnocen jako NEPRAVDA a vytiskne hodnotu 0.Jako jedna z podmínek vyhodnocen jako PRAVDA, přestane hodnocení.

Klíčové slovo operátor pro ||

Nebo operátor je ekvivalentní textu ||.Existují dva způsoby přístupu nebo operátor v programech: zahrnout záhlaví souboru iso646.h, nebo kompilace s /Za volba kompilátoru (zakázat rozšíření jazyka).

Příklad

// expre_Logical_OR_Operator.cpp
// compile with: /EHsc
// Demonstrate logical OR
#include <iostream>
using namespace std;
int main() {
   int a = 5, b = 10, c = 15;
   cout  << boolalpha
         << "The true expression "
         << "a < b || b > c yields "
         << (a < b || b > c) << endl
         << "The false expression "
         << "a > b || b > c yields "
         << (a > b || b > c) << endl;
}

Viz také

Referenční dokumentace

Logické operátory C++

Operátory C++

Přednost a asociativita operátorů

C logické operátory