Bagikan melalui


Operator OR logis: ||

Sintaks

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

Keterangan

Operator OR logis (||) mengembalikan nilai true boolean jika salah satu atau kedua operand adalah true dan mengembalikan false sebaliknya. Operan secara implisit dikonversi ke jenis bool sebelum evaluasi, dan hasilnya berjenis bool. LOGICAL OR memiliki associativity kiri-ke-kanan.

Operan ke operator OR logis tidak harus memiliki jenis yang sama, tetapi harus dari jenis boolean, integral, atau pointer. Operan umumnya adalah ekspresi relasional atau kesetaraan.

Operan pertama dievaluasi sepenuhnya dan semua efek samping diselesaikan sebelum melanjutkan evaluasi ekspresi OR logis.

Operan kedua dievaluasi hanya jika operand pertama dievaluasi ke false, karena evaluasi tidak diperlukan saat ekspresi OR logis adalah true. Ini dikenal sebagai evaluasi sirkuit pendek.

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

Dalam contoh di atas, jika x sama dengan w, , yatau z, argumen kedua ke printf fungsi mengevaluasi ke true, yang kemudian dipromosikan ke bilangan bulat, dan nilai 1 dicetak. Jika tidak, itu mengevaluasi ke false dan nilai 0 dicetak. Segera setelah salah satu kondisi mengevaluasi ke true, evaluasi berhenti.

Kata kunci operator untuk ||

C++ menentukan or sebagai ejaan alternatif untuk ||. Di C, ejaan alternatif disediakan sebagai makro di <header iso646.h> . Di C++, ejaan alternatif adalah kata kunci; penggunaan <iso646.h> atau C++ setara <ciso646> tidak digunakan lagi. Di Microsoft C++, /permissive- opsi atau /Za pengkompilasi diperlukan untuk mengaktifkan ejaan alternatif.

Contoh

// 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;
}

Lihat juga

Operator, prioritas, dan associativitas bawaan C++
Operator logis C