C语言的多级指针

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tiger_gy/article/details/88667551

                                    C语言的多级指针

* int* p; int 类型的一级指针。 int** p2; int 类型的二级指针

* 二级指针变量只能保存一级指针变量的地址

* 有几个* 就是几级指针, int*** 三级指针

* 通过int类型三级指针 操作int类型变量的值 ***p

#include<stdio.h>    
#include<stdlib.h>    
/**
多级指针 数星星  有几个星就是几级指针 取值通过三级指针拿到最初的变量的值 ***point3 
*/
main(){    
      int i = 123;
      //int类型的一级指针 
      int* pointer = &i;
      //int类型的二级指针 二级指针只能保存一级指针的地址 
      int** pointer2 = &pointer; 
      //int类型的三级指针 
      int*** pointer3 = &pointer2; 
      printf("***pointer3 = %d\n",***pointer3);
       system("pause"); 
       } 

多级指针案例 取出子函数中临时变量的地址

#include<stdio.h>    
#include<stdlib.h>    
/**
main函数获取子函数中临时变量的地址 
*/
function(int** pointer){
   int i = 123;
    *pointer = &i;  
    printf("i的地址%#x\n",&i);    
          }

main(){    
      int* pointer1;
      function(&pointer1);
      printf("pointer1的值%#x\n",pointer1);
       system("pause"); 
       } 

猜你喜欢

转载自blog.csdn.net/tiger_gy/article/details/88667551