How to use unions in C for pseudo-polymorphism
Consider a data structure to describe blocks of a matrix in C: // Matrix block typedef struct { union { int i; double d; } *a; // pointer to first element in matrix block int k; // block index int p; // no. of block rows int q; // no. of block columns int m;