Bitoperatoren



  • Hallo,

    Kann mir jemand sagen,wie ich '&', '|', '^', '<<', '>>' benutze?

    ...Danke!!...



  • Kann mir jemand sagen,wie ich '&', '|', '^', '<<', '>>' benutze?

    Du nimmst zwei Variablen a und b eines integralen Typs T und verknüpft diese mit einem der bit-Operatoren p. Optional kannst du das Ergebnis dann einer weiteren Variablen c von T zuweisen.

    Oder was genau willst du wissen?



  • Original erstellt von HumeSikkins:
    Du nimmst zwei Variablen a und b eines integralen Typs T und verknüpft diese mit einem der bit-Operatoren p.

    std::cout << "foo";
    

    macht dann was?

    [Für vorzeichenbehaftete T kommt manchmal auch das raus, was man nicht will ...]



  • [Für vorzeichenbehaftete T kommt manchmal auch das raus, was man nicht will ...]

    Wenn man keine Ahnung von der internen Repräsentation hat sollte man die Finger davon lassen.



  • std::cout << "foo";
    macht dann was?

    Foo nach cout schreiben. Ich dachte es ging mehr um das bitweise arbeiten. Schließlich kann ich alle aufgezählten Operatoren auch für beliebige udts überladen. Damit ist meine Aussage natürlich strenggenommen quatsch. Aber wie gesagt. Ich habe die Frage schlicht anders verstanden.

    [Für vorzeichenbehaftete T kommt manchmal auch das raus, was man nicht will ...]

    Seit wann schließt "integralen Typs" vorzeichenbehaftete Typen aus?

    Wo wir gerade wieder so schön überkorrekt sind. Aufzählungstypen müssen hier natürlich auch noch hin.



  • Original erstellt von grenouille:
    Wenn man keine Ahnung von der internen Repräsentation hat sollte man

    unsigned nehmen. Warum die meisten Datentypen per se vorzeichenbehaftet sind, ist mir übrigens immer noch nicht wirklich klar. Weiß jemand mehr?

    Original erstellt von HumeSikkins:
    Ich dachte es ging mehr um das bitweise arbeiten.

    Häufig sehen Anfänger zuerst die gezeite Zeile mit cout, schlagen im Buch nach, finden bitweise Operatoren und fragen nach. Darum meine Frage.

    Seit wann schließt "integralen Typs" vorzeichenbehaftete Typen aus?

    Wer hat das behauptet? Ich habe mir lediglich erlaubt, anzumerken, dass es häufig Unsinn ist, vorzeichenbehaftete Typen für Bitoperationen zu verwenden.

    [ Dieser Beitrag wurde am 08.07.2003 um 21:29 Uhr von Daniel E. editiert. ]



  • wahrscheinlich weil signed öfters gebraucht wird und so spart man sich die Tipp Arbeit signed int explizit schreiben zu müssen. Zumindest war das doch der Grund bei = für Zuweisungen und == für Vergleiche (oder?).



  • Hallo,

    könnte mir jemand paar beispiele mit zahlen zeigen und erklären? (z.B. 10 & 5)

    danke!



  • Weiß jemand mehr?

    Ich nicht. Aber hilft dir dieser Thread weiter?

    Wer hat das behauptet?

    Mein Hirn, das das "nicht" verschluckt und damit deinen Satz falsch interpretiert hat.



  • Hallo,
    könnte mir jemand paar beispiele mit zahlen zeigen und erklären? (z.B. 10 & 5)

    danke!

    Also bitte! Nimme einfach 2 binäre Zahlen, verknüpfe sie und wandle sie in eine Dezimalzahl um.



  • Weißt du überhaupt, was es bedeutet, zwei Zahlen bitweise zu verknüpfen???


Anmelden zum Antworten