> >> ist ja ein Bitschieber nach rechts oder???
Ganz genau
> kann ich es so verstehen
>
> 00000000->00000001
Wie du da drauf kommst ist mir schleierhaft.
Wenn ich 00000000 8-mal nach rechts schiebe,
ist das immer noch 00000000
Ich geh mal davon aus, dass buffer_counter ein unsigned int ist,
auf einem gcc also 16 Bits belegt.
also zb.
01011010 11111111
und das 8 mal nach rechts geschoben ergibt
00000000 01011010
Im Endeffekt erhält man damit also Zugang zum High-Byte eines int.
> hat jemand einen gute Tutorial über das Bitschieben????
Was brauchst du. Ist doch simpel. Mal dir die Bits auf und schiebe
sie so oft wie angegeben. Das einzige problematische ist das Fakt,
dass bei signed nicht definiert ist, ob da jetzt das Vorzeichenbit
dupliziert wird oder ob von links eine 0 nachkommmt. Daher
sollte man diese Dinge, Bitmanipulationen im allgemeinen, immer
mit unsigned Typen machen. Auch im obigen ist es ratsam, anstatt
dem cast auf char einen cast auf unsigned char zu machen.