#include <stdint.h>
#include <stdio.h>
uint8_t read_as_u8(const uint8_t* data) {
return *(const uint8_t*)data;
}
uint16_t read_as_u16(const uint8_t* data) {
return *(const uint16_t*)data;
}
int main(void) {
uint8_t data[4] = { 0x00, 0x11, 0x22, 0x33 };
printf("%x\n", read_as_u8(&data[1]));
printf("%x\n", read_as_u16(&data[1]));
return 0;
}
I2luY2x1ZGUgPHN0ZGludC5oPgojaW5jbHVkZSA8c3RkaW8uaD4KCnVpbnQ4X3QgcmVhZF9hc191OChjb25zdCB1aW50OF90KiBkYXRhKSB7CiAgICByZXR1cm4gKihjb25zdCB1aW50OF90KilkYXRhOwp9Cgp1aW50MTZfdCByZWFkX2FzX3UxNihjb25zdCB1aW50OF90KiBkYXRhKSB7CiAgICByZXR1cm4gKihjb25zdCB1aW50MTZfdCopZGF0YTsKfQoKaW50IG1haW4odm9pZCkgewogICAgdWludDhfdCBkYXRhWzRdID0geyAweDAwLCAweDExLCAweDIyLCAweDMzIH07CiAgICBwcmludGYoIiV4XG4iLCByZWFkX2FzX3U4KCZkYXRhWzFdKSk7CiAgICBwcmludGYoIiV4XG4iLCByZWFkX2FzX3UxNigmZGF0YVsxXSkpOwoKICAgIHJldHVybiAwOwp9