📜  C ++ |这个指针|问题3(1)

📅  最后修改于: 2023-12-03 14:39:38.919000             🧑  作者: Mango

C++ | 这个指针 | 问题3

在C++中,指针是一个重要的概念,它允许我们直接访问内存地址。指针在C++中扮演着很重要的角色,如果我们了解了指针的使用,那么我们可以更好地理解和编写C++程序。

问题描述

在C++中,下面的代码片段中的指针会发生什么?

int main()
{
    int x = 10;

    int *p = &x;

    int **q = &p;

    cout << **q << endl;

    return 0;
}
解决方案

在这个程序中,我们定义了一个整型变量x,并将它初始化为10。

int x = 10;

我们还定义了一个整型指针p,并将它初始化为变量x的地址。

int *p = &x;

然后,我们定义了一个指向指针p的指针q,并将它初始化为指针p的地址。

int **q = &p;

接下来,我们使用双重指针q来输出变量x的值。

cout << **q << endl;

输出结果为:

10

这是因为,使用**q解析指针q指向的指针p,得到变量x的地址,然后再使用*来解析这个地址,得到变量x的值。

所以,我们可以得到指针的概念:指向一个指针的指针就是双重指针。