2019独角兽企业重金招聘Python工程师标准>>>
void *为“无类型指针”,可以指向任何数据类型。
void指针的使用规范:
1、void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值。例如:
int *p;
void *q;
q=p
如果要将q赋给其他类型指针,则需要强制类型转换,如:p=(int *)q
2、在ANSIC标准中,不允许对void指针进行算术运算,如q++或q+=1等。而在GNU中则允许,因为在缺省情况下,GNU认为void*与char *一样。sizeof(*q)=sizeof(char)
在什么时候使用void指针:
1、将void指针用作函数的形参,这样函数就可以接收任意数据类型的指针作为参数。
2、当进行纯粹的内存操作时。