美文网首页
C语言多级指针

C语言多级指针

作者: AuglyXu | 来源:发表于2018-09-07 23:20 被阅读0次

多级指针

  • 指针中保存着其他指针的地址,我们就称之为多级指针

多级指针的定义

  • 在要保存的指针变量的基础上加一颗星即可
  • 例如: int *p; 如果想保持指针变量p的地址, 只需在定义时多加一颗星即可 int **pp;
 int num;
    num = 6;

    // 一级指针
    int *p;
    p = #
    printf("*p = %i\n", *p); // 6
    // 二级指针
    int **pp;
    pp = &p;
    printf("&pp = %p\n", &pp); // &pp = 0060FEA4
    // 结论: *pp 和 p 和 &num相等;
    printf("*pp = %p\n", *pp); // *pp = 0060FEAC
    //   *(*pp)  --> *(p) --> *p --> num
    // 规律: 如果想通过多级指针获取某个变量的值, 那么是几级指针, 前面就写几颗星即可
    // 注意点: 在企业开发中, 最多二级指针, 三级顶天了, 四级没讲过
    printf("**pp = %i\n", **pp);

在以上代码中
*pp == p == &num
(pp) --> *(p) --> *p --> num


多级指针的内存表现形式

int num = 9;
int *p;
p = #
int **pp;
pp = &p
  • 图解
    指针pp指向p的地址 通过pp可以访问到p内存中存储的地址0xff94,通过访问p可以访问到num内存中存储的数据9,也就是说通过**pp可以直接访问到num内存中存储的数据

相关文章

  • C语言多级指针

    多级指针 指针中保存着其他指针的地址,我们就称之为多级指针 多级指针的定义 在要保存的指针变量的基础上加一颗星即可...

  • 《C语言》多级指针

    运行结果

  • C语言19 指针取值的两种方式

    C语言19 指针取值的两种方式 一级指针和多级指针 *()与[]的互换表示 总结

  • C语言地址、指针、多级指针、数组、数组指针

    数据类型 基本数据类型:short(2)、int(4)、long(8)、char(1)、float(4)、doub...

  • 小朋友学数据结构(15):二叉排序树

    二叉排序树会用到指针的指针,在学习二叉排序树之前,请先了解小朋友学C语言(41):二级指针与多级指针 代码: 运行...

  • C语言05- 指针

    C语言05- 指针 13:指针 指针是C语言中的精华,也是C语言程序的重点和难点。 13.1:指针定义与使用 指针...

  • 理解C指针以及多级指针

    &: 取址符 *加变量名:可以理解为取值符,因为指针变量里面存的是一个指针,所以要取地址所存储的值; 例: 打印结...

  • 02-C语言的指针

    02-C语言的指针 目标 C语言指针释义 指针用法 指针与数组 指针与函数的参数 二级指针 函数指针 指针在C中很...

  • 10/21

    今天老师讲了多级指针,深入讲了地址和内存空间,让我深刻理解了*(*(a)+i)+j代表的意义,c语言课程也正式结束...

  • C语言day08-13多级指针

    pragma mark 多级指针 pragma mark 概念 pragma mark 代码

网友评论

      本文标题:C语言多级指针

      本文链接:https://www.haomeiwen.com/subject/ntghgftx.html