#include int main(void) { int *i, j = 1; char *c, h = 'a'; double *d, e = 2.0; void *f; i = &e; /* error: i cannot point to e */ c = &h; d = &j; /* error: d cannot point to j */ f = &j; /* OK. Generic pointer */ printf("%d, %c, %f, %d\n", *i, *c, *d, *(int *)f); }