二级指针简例

type *p 中的 p、*p 和 &p 到底是什么,那也就能够理解二级指针了。

拆分着看,其中 * 是取值符号,& 是取地址符号;然后就把 p 当作正常的变量看待

个人理解是不要把 *p 看成整体,看成是 *§ 更好理解。把 p 看成正常的变量名,那么 p 这里就表示这个变量的值;

#include <iostream>
using namespace std;
int main (){
    int  var;
    int  *ptr;
    int  **pptr;

    var = 3000;

    // 获取 var 的地址
    ptr = &var;

    // 使用运算符 & 获取 ptr 的地址
    pptr = &ptr;

    // 使用 pptr 获取值
    cout << "var 值为 :" << var << endl;
    cout << "&var 值为 :" << &var << endl;

    cout << "*ptr 值为 :" << *ptr << endl;
    cout << "ptr 值为 :" << ptr << endl;
    cout << "&ptr 值为 :" << &ptr << endl;

    cout << "**pptr 值为 :" << **pptr << endl;    
    cout << "*pptr 值为 :" << *pptr << endl;
    cout << "pptr 值为:" << pptr << endl;

    cout << "&pptr 值为:" << &pptr << endl;  

    return 0;
}

运算结果为:

var 值为 :3000
&var 值为 :0x61ff1c

*ptr 值为 :3000
ptr 值为 :0x61ff1c
&ptr 值为 :0x61ff18

**pptr 值为 :3000
*pptr 值为 :0x61ff1c
pptr 值为:0x61ff18

&pptr 值为:0x61ff14
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值