Logische Operatoren
-
Hallo! Ich habe eine Frage und zwar habe ich folgenden Ausdruck:
5 && false
Dies gibt mir 5 zurück. Aber ich verstehe nicht genau wieso. Wie kann ich mir das vorstellen? Was hat die 5 den für einen Wert intern? Oder wieso gibt es mir einfach 5 zurück. Hab auch 5 && true ausprobiert. Gibt ebenfalls 5.
Sollte das logische && nicht eigentlich einen bool zurück? Und zwar true genau dann wenn beides korrekt ist?
Bin grad etwas verwirrt!
-
Hallo! Ich habe eine Frage und zwar habe ich folgenden Ausdruck:
5 && false
Dies gibt mir 5 zurück.
Lüg' nicht!
-
Arcoth schrieb:
Hallo! Ich habe eine Frage und zwar habe ich folgenden Ausdruck:
5 && false
Dies gibt mir 5 zurück.
Lüg' nicht!
Ach herje.. Ich habe die Klammern vergessen.
Beim Ausdruck:
std::cout << (5 && false); gibts mir 0 zurück.
std::cout << 5 && false ; gibts mir 5 zurück.Ohje. Aber ich verstehe nicht ganz, wie man eine Zahl (5) mit einem false vergleichen kann. Wie kann ich mir das vorstellen?
-
scoubina schrieb:
Aber ich verstehe nicht ganz, wie man eine Zahl (5) mit einem false vergleichen kann.
Warum machst Du es dann?
-
scoubina schrieb:
std::cout << (5 && false); gibts mir 0 zurück.
std::cout << 5 && false ; gibts mir 5 zurück.Du meinst "gibt aus". Der erste Ausdruck gibt std::cout zurück, der zweite gibt false zurück.
Ohje. Aber ich verstehe nicht ganz, wie man eine Zahl (5) mit einem false vergleichen kann. Wie kann ich mir das vorstellen?
Die 5 wird implizit in true umgewandelt (0 wird zu false, alles andere wird zu true).
-
[quote="Furble Wurble"][quote="scoubina"]Aber ich verstehe nicht ganz, wie man eine Zahl (5) mit einem false vergleichen kann.[/quote]Warum machst Du es dann? [/quote]
Hehe, frag unser Dozent
-
Vielen Dank euch, jetzt habe ich es verstanden!