Please can someone show me a code fragment using the following code. I think I understand the enum, and the union part. But dont get how the enum works in conjunction with the union part. Every other example I have found uses an integer in place of the enum to save the union type that's presently in use. I have tried to comprehend how this works but simply miss whats going on.
struct taggedunion { enum {UNKNOWN, INT, LONG, DOUBLE, POINTER} code; union { int i; long l; double d; void *p; } u; };