AND-Operator: &&
expression && expression
Hinweise
Der logische Operator AND (&&) gibt den booleschen Wert true , wenn beide Operanden true sind zurück und gibt false andernfalls zurück.Die Operanden werden implizit konvertiert, um bool vor der Auswertung einzugeben, und das Ergebnis ist vom Typ bool.Logisches AND hat Assoziativität von links nach rechts.
Die Operanden für den logischen Operator AND müssen nicht vom gleichen Typ sein, aber sie müssen vom Zeigertyp oder ganzzahlig sein.Die Operanden sind im Allgemeinen relationale oder Gleichheitsausdrücke.
Der erste Operand ist vollständig ausgewertet und alle Nebeneffekte werden abgeschlossen, bevor die Auswertung des Ausdrucks der logischen AND-Operation fortsetzt.
Der zweite Operand nur ausgewertet wird, wenn der erste Operand true ergibt (Wert ungleich 0 (null).Diese Auswertung werden unnötige Auswertung des zweiten Operanden, wenn der Ausdruck der logischen AND-Operation falsch ist.Mithilfe dieser Kurzschlussauswertung verwenden, um zu verhindern dereferenzierenden NULL-Zeiger, wie im folgenden Beispiel gezeigt:
char *pch = 0;
...
(pch) && (*pch = 'a');
Wenn pch null (0) ist, wird die rechte Seite des Ausdrucks niemals ausgewertet.Daher ist die Zuweisung durch einen NULL-Zeiger unmöglich.
Für Operator-Schlüsselwort &&
Der Operator ist und , die Text aus &&.Es gibt zwei Möglichkeiten, den Operator und in Programmen zuzugreifen: Schließen Sie die Headerdatei ein. Alternativ dazu iso646.hkompilieren Sie mit der Compileroption /Za Erweiterungen deaktivieren Sie den Sprachen ().
Beispiel
// expre_Logical_AND_Operator.cpp
// compile with: /EHsc
// Demonstrate logical AND
#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;
}