#include <cstdio>

struct A { int x; };
struct B { int y; };

struct C : B, A {};

int main() {
    void* c = new C();
    printf("%p\n", c);  // 0x1000
    A* a = (A*) c;
    printf("%p\n", a);  // 0x1000
    A* aa = (A*) ((C*) c);
    printf("%p\n", aa); // 0x1004
    return 0;
}


