空隙* V []; v [i] = v [j];为什么这是对的?

时间:2011-11-21 16:04:52

标签: c

void*是指向什么都没有的指针,即它只是一个地址!怎么能取消引用呢?但是在 The C programming language(第二版)第121页中,swap函数似乎就是这样做的。

2 个答案:

答案 0 :(得分:2)

void *v[]是指针的数组。因此v[i] = v[j];将索引j的元素分配给位置i,该位置不涉及解引用指针,只是复制指针(地址)。

答案 1 :(得分:0)

您需要将指针类型转换为所需类型。例如,void * x; (int *)x - 突然它是指向int的指针。