void指针一般被称为通用指针或泛指针,它指向对象时,但该对象不属于任何类型。
例如:
int *ip;
void *p;
ip指向一个整形值,而p指向的对象不属于任何类型。
任何时候都可以用其他类型来替代void指针,同样的void指针也可以代替其他类型。
例如:
int *p ,i = 3;
void *d;
p = &i;
d = p; //L1
printf("%d\n",*(int*)d); // L2
对于像L1行的赋值是可以允许的,而L2行是因为在打印时没有void类型,所以要转化为%d(即int)类型。