int main ()
{
int *tab[5];
int i=0;
for (;i<5; i++)
{
tab[i]=&tab[i];
}
return 0;
}
我想将自己的地址分配给标签的每个元素。为什么不起作用?
答案 0 :(得分:2)
使用int*
数组无法做到这一点。因为&tab[i]
将是int**
。那些指针类型是不兼容的。
但是,void*
指针可以保存任何其他对象指针的地址,甚至是void**
。因此这个声明:
void* tab[5];
将您的程序变为格式良好的程序。