初识指针

  在计算机的内存中存放了各种数据,这些数据放在内存的不同字节上,为了准确的访问这些数据,要为这些字节编号,我们将这些编号称为地址也叫指针。

  指针变量的定义:例如  int   *  p = &a; 其中 “   *  ”  只有一个作用,就是区别于  int  p  ;大家都知道  int  p是定义一个整型的变量,而我们需要定义的是一个指针,所以我们用“  *  ”加以区分,仅此而已,没有别的任何作用。

  星号“   *共有三种作用:1)用来定义指针变量,如上;

                                          2)代表乘法 ,如a*b;

                                          3)表示获取指针所指内存区存放的数据,如  int  a=100;  int  *p = &a ;  结果*p等于a的值100。

   假设  int  a ;  pa  是指向a的指针,那么  *&a  与  &*pa 的区别在哪呢,其实&a也是一个指针,也指向a,所以  *&a  就等于  pa

所以  *&a  =  *pa  =  a,  同理 *pa  =  a,所以  &*pa = &a  =  pa。

   当我们将  *p  与  p 区分开后,对于指针相关的运算就简单了,如图

在上图中因为内存中存放的都是数字,是int  类型的,所以一个格子代表4个字节

猜你喜欢

转载自blog.csdn.net/qq_42720695/article/details/81226504
今日推荐