C语言 - void * 指针 和 空指针

  1. void * 类型指针 指向存放数据的地址,但该地址存放的数据的数据类型未知。

例如,动态内存分配,一开始只是分配地址,但不知道该地址存放什么,接着强制类型转换,使得它用来存放我们想要存放的内容。

intstr=(char)malloc(sizeof(int)*13);
上面这条代码,malloc()函数分配的地址一开始是void * 类型的,因为我们用来存放int类型数据,所以强制转换为int * 。

2.空指针有指向,但是它指向的地址是特殊的,该地址不允许存放数据和不允许程序访问,所以空指针不能操作该地址里的东西,我们就理解为“指针指向了空,无法操作了”。

猜你喜欢

转载自blog.csdn.net/qq_38694181/article/details/101623787