指针

指针,这个东西真是不好学,记下自己的一点总结吧!《c++ primer》

指针:

  用于指向对象

指针的定义与初始化:

  可以用0值常量赋值

  特殊指针--void*

指针的操作:

  与引用区别 引用总指向某个对象,引用再赋值不影响引用本身--(省去详细的例子!)

  指向指针的指针 指针里存放另一个指针的地址(指针也是保存在内存中的)

    int p=1; int *pp=&p; int **ppp=&pp;

    假如 &p为0012FF60,则pp里存放0012FF60,此时pp本身的地址为0012FF54,所以ppp里存放是0012FF54,而此时*ppp是什么呢,这里可以看作是*(0012FF54),即pp被指出来,它里面存放0012FF60,所以*ppp为0012FF60,而**ppp则为1啦!

    

     访问数组 数组名为指向数组第一个元素的指针

    int m[2]={1,2}; 则*m为1即m[0],m相当于&m[0],于是m[1]则为m+1;

           int m[4]={1,2,3,4}; int *n=&m[1]; n[1]则为m[2],注意这里的n[1]前不用*操作符!

            

不知写得清楚不?

posted on 2011-04-06 01:01  穆穆  阅读(243)  评论(1)    收藏  举报