文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>指针的简单总结

指针的简单总结

时间:2010-10-29  来源:shenhailuanma

对于指针这块,感觉有很多要说,但真正下笔时却又不知写点啥好。所以写点我自己的理解好了。

        首先,指针变量是一个变量,其内容是指向内存某个单元的地址。

  指针用法主要有以下几种:

1.指向变量

这个最基础,就不说了。不过要注意变量类型的问题。

2.数组

          在我看来,数组名也是指针,代表地址,但是它是常量,不能对它的值进行修改。

3.字符数组、字符串
4.指向函数
一般定义形式:数据类型  (*指针变量名)();
例如: int max(int,int);
int (*p)();
p=max;
5.返回指针值的函数
一般定义形式: 类型名  *函数名(参数列表)
例如:int *a(int x,int y)
6.指针数组
           一个数组,其元素均为指针类型数据,称为指针数组,指针数组中的每一个元素都是一个指针变量。
一般定义形式: 类型名     *数组名[数组长度];
例如:     int   *p[4];
它比较适合用来指向若干个字符串,使字符串处理更加方便灵活。
7.指向指针
一般定义形式: char   * *p;
=====================================
下面是指针比较晦涩应用:

1.数组名的研究
例如:
 int a[10];
 则a,&a,a+1,&a+1的值各是多少?
       经过编译运行,可以得到:
    a=-1076061148
    &a=-1076061148
    a+1=-1076061144
    &a+1=-1076061108
      可以发现a和&a的值相同,a+1比a增加了4,&a+1比&a增大了40 。
原理:a作为右值表示数组首元素地址,&a代表数组首地址,把整个数组作为一个元素看待,故a+1移动一个元素的位置,&a+1移动一个数组长度的位置。

2.指向数组的指针
例如:
       int (* array)[10];   //array是一个指针,指向有10个元素的整型数组。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载