我有一个任意值的数组,所以我将它定义为一个 void 指针数组,所以我可以指向任何类型的信息(如int
字符数组等)。但是,我如何实际分配int
给它?
以这些初始化为例:
void* data[10];
int x = 100;
我的直觉会这样认为,但这会产生编译错误:
data[0] = malloc(sizeof(int));
*(data[0]) = x;
我也考虑过使用&x
,但我会获取一个局部变量的地址,(据我所知)在退出过程后会被清除。因此,如果我有一个局部变量x
,我将如何正确地将其转换为 void 指针类型的变量?