was bedeutet dieses "&" (Kaufmanns und)
-
Cout << (7 & 4) << endl;
erzeugt bei mir die Ausgabe
4
4
4
4
0
0
0
0kann mir das einer erklären was das und zeichen macht?
DAnke
-
Hallo
soweit ich weiss werde die beiden Zahlen auf binärebene "addiert".
etwa so:
100101110 sage ich mal ist die 7
&
011101001 sage ich mal ist die 4000101000 Das wäre das Ergebniss
Aber ich bin auch nur ein Anfänger.
@Profis koriegiert mich wenn ich falschliege.
thx :p
-
Bitweises UND; vergleicht paarweise je zwei korrespondierende Bits und setzt das entsprechende Bit im Ergebnis auf 1, wenn beide Bits 1 sind, andernfalls auf 0.
Sprich der wandelt die ins binäre und verundet die dann, also
111 (7)
100 (4)
--- sind
100 = 4usw.
dazu gibts noch | für ODER (wenn mindestens eins der bits 1 sind dann ergebnis 1) und ^ für exklusives oder(wenn genau einer der beiden bits 1 ist kommt 1 bei raus, sonst 0)
-
Zu diesem Thema habe ich mir mal eine schöne Liste irgendwoher kopiert, sicher hier aus dem Forum.
Die ist echt praktisch.Operator Name Stelligkeit/ Assoziativität. -------------------------------------------------------------------------------- :: Scope-Operator (global) unär :: Scope-Operator (class, namespace) binär/L -------------------------------------------------------------------------------- . Member-Auswahl -> Member-Auswahl [] Index () Funktionsaufruf () Typkonstruktion -------------------------------------------------------------------------------- ++ postfix increment unär -- postfix decrement unär typeid unär const_cast dynamic_cast reinterpret_cast static_cast -------------------------------------------------------------------------------- sizeof Größe eines Typs/Objekts unär ++ prefix increment unär -- prefix decremment unär ~ bitweise nicht ! logisches nicht - unäres Minus unär + unäres Plus unär * dereferenzieren unär & Adressoperator unär () Typkonvertierung new delete -------------------------------------------------------------------------------- ->* Methodenaufruf über ptr .* Methodenaufruf über Objekt -------------------------------------------------------------------------------- * Multiplikation binär/L / Division binär/L % Modulo binär/L -------------------------------------------------------------------------------- + Addition binär/L - Subtraktion binär/L -------------------------------------------------------------------------------- << Bitweise links Shift binär/L >> Bitweise rechts Shift binär/L -------------------------------------------------------------------------------- < Kleiner binär/L <= Kleiner-gleich binär/L > Größer binär/L >= Größer-gleich binär/L -------------------------------------------------------------------------------- == gleich binär/L != ungleich binär/L -------------------------------------------------------------------------------- & Bitweise AND binär/L -------------------------------------------------------------------------------- ^ Bitweise XOR binär/L -------------------------------------------------------------------------------- | Bitweise OR binär/L -------------------------------------------------------------------------------- && Logisches AND binär/L -------------------------------------------------------------------------------- || Logisches ODER binär/L -------------------------------------------------------------------------------- ? ternär/L -------------------------------------------------------------------------------- = Zuweisung binär/R *=, += binär/R %=, +=, -=, <<= binär/R >>=, &=, |=, ^= binär/R -------------------------------------------------------------------------------- throw -------------------------------------------------------------------------------- , Komma binär/L --------------------------------------------------------------------------------
-
Leute, super Antworten. Danke an euch