1、void*指针是指针,也指向内存中某个地址的数据,但是内存中的数据类型是不确定的,所以使用时需要转换类型。
2、void的意思是无类型,是无类型指针,可以指向任何类型的数据。
因此void指针通常被称为通用指针或泛指针,或万能指针。
实例
#include<stdio.h> int main(void) { int num1 = 1; char char1 = 'b'; /*定义两个void指针类型*/ void *void_pointer_1; void *void_pointer_2; /*给不同的void指针指向不同的数据类型*/ void_pointer_1 = &num1; void_pointer_2 = &char1; printf("void_pointer_1:%d,void_pointer_2:%c\n",*((int *)void_pointer_1),*((char *)void_pointer_2)); void_pointer_2 = &num1; printf("void_pointer1:%d\n",*((int *)(void_pointer_2))); float float_1 = 1.25f; float* float_pointer = &float_1; void* void_float_pointer ; /**将float类型指针赋值给void类型指针*/ void_float_pointer = float_pointer; printf("float_pointer:%f\n",*((float *)void_float_pointer)); return 0; }
以上就是c语言void*指针的介绍,希望对大家有所帮助。更多C语言学习指路:C语言教程
本教程操作环境:windows7系统、C11版,DELL G3电脑。