指针的地址

时间:2015-02-16 15:17:18

标签: c++ pointers

为什么我们不能将指针的地址存储在另一个指针中?指针只是变量的一种特殊类型,它有一些地址,但为什么我不能将该地址存储到另一个指针中呢?

int main()
{
    int * ptr;
    int * q;
    q = &ptr;
}

为什么这段代码错了?

1 个答案:

答案 0 :(得分:11)

您可以将指针的地址或任何其他对象类型存储在另一个指针中。但你必须得到正确的类型;你试图将指针的地址存储在指向int的指针中,而不是指向指针的指针。

int ** q = &ptr;   // pointer to pointer to int