- 1
- 2
- 3
- 4
- 5
uint16_t swap_bytes(uint16_t a){
uint16_t tmp = *((uint8_t*)&a+1);
*(((uint8_t*)&tmp)+1) = *((uint8_t*)&a);
return tmp;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 1
+1000
uint16_t swap_bytes(uint16_t a){
uint16_t tmp = *((uint8_t*)&a+1);
*(((uint8_t*)&tmp)+1) = *((uint8_t*)&a);
return tmp;
}