码迷,mamicode.com
首页 > 其他好文 > 详细

16 二级指针

时间:2020-05-31 16:20:15      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:div   赋值   主函数   完成   函数   eof   意思   malloc   行操作   

#include <stdio.h>

void fun(int** q);
void fun2(int** q);
main() {
    int* p;

    //把p的二级指针传给fun
    fun(&p);
    printf("%d", *p);


    //动态分配内存
    fun2(&p);

}
//-----------------------------------------------------------------------------------------------

void fun(int** q) {
    int s = 100;
    *q = &s;

}
/*上面函数的意思是:
int **q;        定义二级指针q   即 q   指向   *q  ,*q 可以指向一个整形
*q=&s       *q 指向整形s
q=&p       调用时,赋值

综上:  q->*q->s
               q->p
所以:   p->s

结论:    把指针p 的指针(地址&p=q)传给一个函数后*q= p  ,
                对*q即是对p进行操作 ,此时*q是指针,可以指向s
*/

//-----------------------------------------------------------------------------------------------
void fun2(int** q) {

    *q = (int*)malloc(sizeof(int));

}
/*上面函数动态申请内存

不释放
调用完成后,主函数可以继续使用fun2 申请的内存

*/

 

16 二级指针

标签:div   赋值   主函数   完成   函数   eof   意思   malloc   行操作   

原文地址:https://www.cnblogs.com/abel2020/p/13019131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!