a <> b ... müßte auch ungleich sein
! ... ist negiert. für boolean Variablen.
a == b ... a ist b ?
a == ! b ... a ist nicht b? für boolean Variablen.
a != b ... a ungleich b
dazu noch
a++ ... incrementiert a nach gebrauch; gleiches auch mit --
++a ... incrementiert a vor gebrauch; gleiches auch mit --
a+=1 ... a = a + 1 ... addiert 1 zu a gleiches mit -*/%
mit den &- und | - Operator ist noch folgendes zu beachten:
es gibt | als auch || sowie & und &&
Unterschied:
bei einem einfachen Operator werden beide Operanden geprüft.
Ausdruck1 | Ausdruck2
Beim doppelten Operator wird der zweite Operand nur geprüft, wenn der erste Operand false ist
Ausdruck1 || Ausdruck2
Also wenn Ausdruck1 true ist, wird Ausdruck2 nicht geprüft.
Analog dazu der &-Operator:
Ausdruck1 && Ausdruck2
Wenn Ausdruck1 false ist, wird Ausdruck2 nicht geprüft
| und & ist die bitweise Verknüpfung von zwei ganzzahligen Werten.
|| und && ist die logische Verknüpfung zweier boolscher Ausdrücke.
Natürlich gibt es implizite Umwandlungsregeln zwischen int und bool, so dass alle Kombinationen erlaubt sind. Man kann in C statt klarer Programme auch Tricks und Quiz-Aufgaben formulieren.
Noch einfacher gesagt:
| und & machen ein logisches OR bzw AND jedes Bits der Byte-Variable
zB b0000 0001 & b0000 0011 ergibt b0000 0001 weilnur das letzte Bit bei beiden Zahlen 1 ist.
|| und && ist eine logische Verknüpfung zweier Bedingungen
zB if a > 5 und a < 10 wenn a größer als 5 und kleiner als 10 dann ... ; die zahl muß also 6 7 8 oder 9 sein dann ist die bedingung wahr. gleiches git für || oder.
Es gibt auch die ?: Konstruktion genannt Ternary Operator
zB
x = (b > 7 ? 2 : 3);
Teilweise kann diese als gekürzte if else Bedingung verwendet werden. Ich kann Dir aber leider nicht sagen in welchen Situatonen sie eine if Bedingung nicht ersetzt.