简单的小例子:
#include <stdio.h> int main(){ void *data = "Hello World";//一个无类型指针代替所有的类型,这里是存储字符型数据 printf("%s\n",data);//将其输出 return 0; }下面是无类型指针,访问是一个字节一个字节的访问的。
#include <stdio.h> #include <stdlib.h> int main(){ void *data = malloc(8);//一个无类型指针代替所有的类型 printf("%ld\n",sizeof(data[0]));//没有创建具体的数据类型,访问的时候是一个字节一个字节访问的。 free(data);//记得释放内存 return 0; }输出
1下面创建一个整型数据类型,在访问时将输出4,即整型的数据长度来访问。
#include <stdio.h> #include <stdlib.h> int main(){ void *data = malloc(8);//一个无类型指针代替所有的类型 int *intData = data;//为其指定一个整型的数据类型 printf("%ld\n",sizeof(intData[0]));//输出其数据尺寸 free(data);//记得释放内存 return 0; }输出
4空指针并赋值
#include <stdio.h> #include <stdlib.h> int main(){ void *data = malloc(8);//一个无类型指针代替所有的类型 int *intData = data;//为其指定数据类型 intData[0] = 10000; printf("%d\n",intData[0]);//输出其值 free(data);//记得释放内存 return 0; }输出
10000