Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- was bedeutet || in c++? (http://www.informatikerboard.de/board/thread.php?threadid=2734)
Geschrieben von kolloq am 08.01.2016 um 16:22:
was bedeutet || in c++?
Meine Frage:
Hi,
ich beschäftige mich noch nicht sehr lange mit C++, deshalb habe ich diese Anfängerfrage, die mir Google leider nicht beantworten konnte:
Was bedeutet || (Doppelstrich)?
Danke für eure Hilfe.
Meine Ideen:
Ein einzelner bedeutet oder, das es ein Vergleichsoperator ist, weiß ich auch. Verhält sich das vielleicht wie beim Überprüfen auf Gleichheit, da verwendet man ja auch zwei == (Gleichheitszeichen)?
Geschrieben von eulerscheZahl am 08.01.2016 um 16:28:
| ist das bitweise ODER,
|| ist das logische ODER.
5 | 6 ist 7 (5 ist binär 101, 6 ist 110), die Bits werden einzeln ODER verknüpft, was zu 111, also 7 führt.
Beim logischen ODER wird erst die linke Seite ausgewertet. Wenn die erfüllt ist, wird die rechte gar nicht mehr geprüft, da TRUE ODER X = TRUE ergibt.
Genauso verhält es sich mit & und &&.
Geschrieben von Shizmo am 08.01.2016 um 17:43:
Gibt es diese bitweisen Verknüpfungen auch in Java und in C?
Geschrieben von eulerscheZahl am 08.01.2016 um 17:48:
Ja, mit der selben Syntax.
x | y //bitweises ODER
x & y //bitweises UND
x ^ y //bitweises XOR
~x //1er Komplement - also alle Bits invertiert
!x //Negation, in Java aber nur für boolean. C/C++ macht das auch für int/float
x << y //leftshift
x >> y //rightshift
Das sollten glaube ich alle gewesen sein.
Forensoftware: Burning Board, entwickelt von WoltLab GmbH