I declared a void pointer
void *ptr;
and a typedef struct named testStructure, with a member 'unsigned int a'.
Now I will cast this pointer to a struct pointer:
ptr=(testStructure*)malloc(sizeof(testStructure));
Now I try to access the member of the struct...
ptr->a=5;
...and I get an error "expression must have a pointer-to-struct-or-union type"... Why is 'ptr' still void? It seems, a void pointer cannot be casted to any other pointer type... How I can do this properly? I just need ONE pointer, which can point to different structures, that means, I need to cast a void pointer...
But it is!
Types are purely a compile-time, source thing - they have no meaning at runtime to the actual CPU!
How about #define-ing a macro...?