1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

// 二维指针

    printf("Addresses of two dimensional pointer\n");

    int** ptr = (int**) malloc(sizeof(int*) * 4); 

    printf("%d:\t%d\n", &ptr, ptr);

    for(i = 0; i < 4; i++) {

        *(ptr + i) = (int*) malloc(sizeof(int) * 2);

    }

    for(i = 0; i < 4; i++) {

        for(j = 0; j < 2; j++) {

            *(*(ptr+i) + j) = i * 2 + j;

        }

    }

    for(i = 0; i < 4; i++) {

        printf("%d:\t%d\n", ptr + i, *(ptr + i));

    }

    printf("==\n");

    for(i = 0; i < 4; i++) {

        for(j = 0; j < 2; j++) {

            printf("%d:\t%d\t%d\n",*(ptr + i) + j, *(*(ptr + i) + j), ptr[i][j]);

        }

        printf("==\n");

    }


求详细代码注释及为什么这么输出(主要是指针和数组运行规律是什么)

特发性震颤

相关文章:

  • 2021-10-14
  • 2021-05-03
  • 2021-12-18
  • 2021-04-05
  • 2021-04-26
猜你喜欢
  • 2021-09-14
  • 2021-09-25
  • 2021-11-05
  • 2021-09-25
  • 2021-07-19
  • 2021-08-31
  • 2022-01-16
相关资源
相似解决方案