C语言中指针是什么呢?简要初步的理解:可以认为是一个地址(或编号),他指向了内存当中的一块区域。我们可以通过指针找到这块内存区域保存的数据
举个例子
int i=2;
定义了一个 int i;我们要改变 i 的值有两种办法,一是我们所熟知的赋值 i=5;二是使用指针。
刚才我们说过指针是一个地址(或编号),通过指针找某个变量所在的内存区域(每个变量都有属于它的内存区域)所保存的数据,那么我们修改这个内存区域内保存的信息就等于修改了这个变量的值了。这个说法可能不怎么规范。。。但是就初学者理解指针而言,就暂且这么理解吧。
现在我们用指针来修改一下变量 i 的值
int i=2;
int *I=&i;//获得 int i 的指针,也就是 i的内存地址。 ***指针定义 : 数据类型 *变量名=&指向的变量 (指针的数据类型要和 指向的变量的数据类型一样,&符号可以取得变量的内存地址)
*I=10;//获得int i 的指针后,就能通过这个指针操作 i 了,现在可以输出 i 的值看看是通过指针改变了 i 的值。
*I等价于对应内存之中保存的数据 可以理解为 *I= 变量 i =对应内存中保存的数据。
要操作对应内存中的数据局通过 *指针变量名这种方式,别直接用 I,指针变量I本身也是个普通的变量,其中保存的是内存地址(编号)例如 0101ffxxd
介绍过指针的基础之后,下次我会介绍指针在函数中的使用
一 函数指针
二 指针作为参数以及返回值
原文:http://www.cnblogs.com/Excavating-machinery-zjk/p/4914512.html