C:数组指针

在这里插入代码片

在这里插入图片描述
在这里插入图片描述


#include <stdio.h>

int main()
{
    int n = 10;
    int *p = &n;
    int **pp = &p;

    printf("%p %p\r\n", pp, &p);
    printf("%p %p\r\n", *pp, &n);
    printf("%d %d\r\n", **pp, n);
    /*
    // arr     int[3][4]
    // arr[3]  int[4]
    int arr[3][4] =
    {
        {1, 2, 3, 4},
        {5, 6, 7, 8},
        {9, 10, 11, 12}
    };

    // 错误的写法 int *p = arr;
    // int [4]
    int (*p)[4] = &arr[1];

    printf("%p %p\r\n", p, arr);
    printf("%p %p\r\n", p[0], arr[0]);
    printf("%p %p\r\n", p[-1][0], arr[0][0]);
    // 0x18fef0 + 4 * sizeof(int)
    // 0x18fef0 + 0x10 = 0x18ff00
    printf("%p \r\n", p[1]);
    // 0x18fef0 + 8 * sizeof(int)
    // 0x18fef0 + 0x20 = 0x18ff10
    //printf("%d \r\n", *(p[2] + 1));
    */

    return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值