5多级指针

Posted zh-xiaoyuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5多级指针相关的知识,希望对你有一定的参考价值。

技术图片

 

 

 使用多级指针的目的:跨函数使用内存

1、多级指针的定义

# include <stdio.h>

int main(void)
{
    int i = 10;
    int * p = &i;  //p只能存放int类型变量的地址
    int ** q = &p;  //q是int **类型, 所谓int **类型就是指q只能存放int *类型变量的地址,     
    int *** r = &q;  //r是int ***类型, 所谓int ***类型就是指r只能存放int ** 类型变量的地址, 

    //r = &p;  //error 因为r是int *** 类型,r只能存放int **类型变量的地址
    printf("i = %d
", ***r); //输出结果是10  只有 ***r才表示的是i, *r或 **r或 ****r代表的都不是i

    return 0;
}

2、多级指针在主函数和被调函数之间的使用

void f(int ** q)
{
    //*q就是p    
}

void g()
{
    int i = 10;
    int * p = &i;类型

    f(&p); //p是int *类型 , &p是int ** 类型
}

int main(void)
{
    g();
    return 0;
}

  

以上是关于5多级指针的主要内容,如果未能解决你的问题,请参考以下文章

一级指针二级指针,或是多级指针访问

一级指针二级指针,或是多级指针访问

C语言提高内容目录

Cheat Engine(CE)教程

Cheat Engine(CE)教程

Cheat Engine(CE)教程