Holger Dietze schrieb:
Ulrich =?iso-8859-1?Q?K=FCttler?= ulrich.kuettler@mailbox.tu-dresden.de schrieb:
Ich stelle mir das so vor. Sollte funktionieren, wenn mit Nullen aufgefuellt wird. (Aber soviel ich weiss garantiert das keiner (?))
#define SWAPBYTES(c) (((c)>>8) & ((c)<<8))
s/&/|/
Funktioniert auf einem 32-Bit-System dann aber nur, wenn Du Dich nicht fuer die hoeherwertigen 16 Bits interessierst (da kommen die Bits 8-15 auch hin).
Dieses Problem kann man umgehen, indem die entsprechenden Bits ausgeblendet werden.
#define SWAPBYTES(c) (((c>>8) && 0x000000FF) & ((c<<8)&&0x0000FF00)
F|r 16 Bit Zahlen ein (short ) davor einf|gen um das Ergebnis in eine 16 Bit Zahl zu konvertieren.
Gr|_e Holger