首页 > 其他 > 详细

关于指向指针的指针的联想

时间:2019-11-25 22:01:26      阅读:90      评论:0      收藏:0      [点我收藏+]
int *p;
分析一下几种看法;
 1.(int *)p;这种的话可以把括号理解为一种变量的定义,定义了一个变量,它存储了一个整型变量的地址。
 2.int (*p);定义一个指针,这个指针指向的是整型变量。
 
再来看看这个:
int **p;
 1.(int *)(*p);
 这个东西,你结合上面的东西来说的话,岂不是,括号讲的是变量的定义,定义一个变量,它是一个指向
 整型变量的指针。右边括号,定义了一个指针,它指向的是 指向一个整型变量的指针。所以说这整个玩意儿,
 讲的是,一个指针p,它储存了另一个指针的地址,它储存的这个指针是一个指向整型变量的指针。
 2.(int **)p;
 这第二种分的,把p当变量,左边的括号是变量定义。那么这个定义是啥意思呢?
 好像可以这样理解:
 *这个东西运算级别高,从右往左结合,然后*和*的级别相同,他俩之间就从左往右了,于是左边这个星号先和
 int一结合,诶,就是说定义一个指向整型(整型处在第一个星号的左边是不,那就指向它)的指针,这还没完,
 第二个星号出来了,左边结合完了,这时候它的左边是啥:(int *),所以第二个*指向的就是它,于是乎,变成了:
 p这个变量呢,它是 指向 一个指向整型变量的指针的指针变量。
 3.int (**p);
 这第三种怎么讲呢,其实也和第二种相似。这和p离得近的*说,你这个p,是一个指针变量,指谁我不知道,爱咋咋地,
 好了,接下来离得远的那个*也说了,小伙子,你这个p啊是一个指针变量,你指的也是一个指针,你指的类型清楚了,
 是指针,嗯好,你指的那个指针,它指的啥,我不管;好啊,俩*号不说话了,int终于插上嘴了,诶,那个不知道指谁的
 指针小伙子,你指我的小老弟,指一个整型变量呗;于是p就是一个指向一个指向整型变量的指针的指针变量。
 
 
--------------------------------------------
 
 

关于指向指针的指针的联想

原文:https://www.cnblogs.com/Bullet2YourHeart/p/11930462.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!