指针有两个属性:指向变量/对象的地址和长度——指针存储地址,指针类型决定长度,编译器根据指针类型从指针指向的地址向后寻址,比如int* 从地址向后寻找4字节,double*从指针向后寻找8字节。
void*是一种特别的指针,表示它没有类型/类型不能判断出指向对象的长度;任何指针都能赋值给void*,但只能获得变量/对象的地址,不知道大小;void*赋值给其他类型指针时,要指明转换类型,即说明存储单元的大小。
注意:1 void* 不能复用;2 void指针不能参与指针运算
指针有两个属性:指向变量/对象的地址和长度——指针存储地址,指针类型决定长度,编译器根据指针类型从指针指向的地址向后寻址,比如int* 从地址向后寻找4字节,double*从指针向后寻找8字节。
void*是一种特别的指针,表示它没有类型/类型不能判断出指向对象的长度;任何指针都能赋值给void*,但只能获得变量/对象的地址,不知道大小;void*赋值给其他类型指针时,要指明转换类型,即说明存储单元的大小。
注意:1 void* 不能复用;2 void指针不能参与指针运算