#include <stdio.h>
#include <stdint.h>
typedef struct {
char a;
int b;
short c;
} MyStruct;
void print_offsets() {
MyStruct foo;
(void) printf("Offset of a: %d\n", (uintptr_t) &foo.a - (uintptr_t) &foo);
(void) printf("Offset of b: %d\n", (uintptr_t) &foo.b - (uintptr_t) &foo);
(void) printf("Offset of c: %d\n", (uintptr_t) &foo.c - (uintptr_t) &foo);
(void) printf("Size: %d\n", sizeof foo);
}
int main() {
print_offsets();
return 0;
}