1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#include <stdio.h> #include <stdlib.h> #include <string.h> int main () { struct base { int basic; }; struct derived { struct base common; char extra; }; struct derived d; struct base *bp; bp = (struct base *)&d; bp->basic = 10; ((struct derived *)bp)->extra = 'x'; return 0; }