一般情况下,指针的值只能赋给相同类型的指针。但是有一种特殊的 void类型指针 ,可以存储任何类型的对象地址,就是说任何类型的指针都可以赋值给void类型的指针变量。经过使用类型显示转换,通过void类型值的指针便可以访问任何类型的数据。
void类型指针
主要注意的是虽然通过void类型值的指针便可以访问任何类型的数据,但是不能声明 void 类型的变量去访问任何类型的数据。 例如:
void
void void_variate; // 这种声明是错的,不能声明void类型的变量
正确的使用方法如下:
# include <iostream>using namespace std;int main(){ void *pv; // 声明void类型的指针 int i = 10; pv = &i; // void 类型指针指向整型变量 int *pint = static_cast<int *>(pv); // void 类型指针赋值给 int类型指针 cout << "*pint = " << *pint << endl; // 打印 *pint 的值 return 0;}
运行结果:
*pint = 10
注: void 指针一般只在指针所指向的数据类型不确定时使用。
一、listlist是Python内置的一种有序集合,可以往该集合中添加或删除相关元素。# list char = ['AA','BB','CC','DD'] print(char)其中,变量char就是一个list,里边包含多个元素。这些元素的数据类型可以不相同,例如整数,字符串,布尔值,甚至另一个list都可以。注意,list中包含的每一个list只当作该list的一个元素。# list