【一次c/c++ 指针的学习过程】

// 一次c/c++ 指针的学习过程
int main() {
    int num,pi;
    num=1;
    num++;
    int *p;
    int **ptr;
    pi=num;
    p=#
    *ptr=#
    std::cout << "Hello, World!" << std::endl;
    std::cout << "num=" << num << std::endl;
    std::cout << "num地址:" << &num << std::endl;
    std::cout << "p指针:" << p << std::endl;
    std::cout << "&p引用:" << &p << std::endl;
    std::cout << "&*p指针所指引用:" << &*p << std::endl;
    std::cout << "*p指针所指:" << *p << std::endl;
    std::cout << "**ptr=" << **ptr << std::endl;
    std::cout << "*ptr=" << *ptr << std::endl;
    std::cout << "ptr=" << ptr << std::endl;
    std::cout << "&ptr=" << &ptr << std::endl;
    std::cout << "&*ptr=" << &*ptr << std::endl;
    std::cout << "&**ptr=" << &**ptr << std::endl;
// notes:
// *p :指的是指向的内容,打印*p返回一个值;
//  p : 指的是指针p本身,返回一个 地址 ,即是指向内容的地址;
//  &a : 指的是a的地址,也就是p指针指向的地址;
//  &p : 指的是指针的地址;
// &*p : 指的是指针指向内容的地址;
// 即 &num = p = &*p; *p = num ;
// **ptr =2 ;可以把*ptr当成上面的p一个指针,指向的是*ptr指向的内容区,即是num的内容区,返回的是内容,2;
// *ptr 类似p指针,指的是*ptr指针指向内容的地址,即是num的地址;
// ptr 返回 *ptr指针本身的的地址
// &ptr 返回ptr指针本身的地址
//&*ptr 返回*ptr本身的地址
//&**ptr 返回*ptr指向内容的地址

    return 0;
}

打印结果:

Hello, World!
num=2
num地址:0x7ff7be1fd208
p指针:0x7ff7be1fd208
&p引用:0x7ff7be1fd1f8
&*p指针所指引用:0x7ff7be1fd208
*p指针所指:2
**ptr=2
*ptr=0x7ff7be1fd208
ptr=0x7ff7be1fd210
&ptr=0x7ff7be1fd1f0
&*ptr=0x7ff7be1fd210
&**ptr=0x7ff7be1fd208

进程已结束,退出代码0

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值