您的位置首页百科问答

void*指针是什么意思?

void*指针是什么意思?

的有关信息介绍如下:

void*指针是什么意思?

void* 表示空指针。空指针不能直接使用,例如,指针的加减法操作(因为不知道类型,无法确定偏移的大小)。某些情况下,不知道指针的类型,先用void*来代替,根据需要再强制转换成需要的指针类型使用。比如malloc函数,它只是申请了一块堆内存,并将首地址返回,但是它根本就不知道调用者会用什么指针来接收这个地址,所以干脆就返回一个指向内存地址的空指针,由用户自己来转换。指针是可以指向任何的类型比如函数void Func(void* p):int *p=malloc(sizeof(int)*3); Func(p);char *p=malloc(sizeof(char )*3); Func(p);struct Test{ int a; int b;}struct Test * test;test.a=100; test.b=200; Func(p);