void *:c语言中的泛型指针,指代任意的指针类型(即int *,float *,int * *……)。当返回值是一个地址或者指针(其实指针本身就是地址)的时候,返回值的类型都可以用void *表示,也可以用此类型来定义任意类型的指针变量
int a;
int *p = &a;
&a这个变量能够赋值给p这个变量,说明&a这个变量的类型也是int *,所以当返回&a的时候,返回值类型是int *,也可以用通用型指针void *替代
id :oc语言中的泛型指针,指代任意对象类型的指针。当返回值是一个对象指针的时候,返回值的类型都可以用id表示,也可以用此类型来定义任意类型的对象指针变量