什么是指针(指针是C语言的灵魂) 指针就是地址,地址就是指针 地址就是内存单元的编号 指针变量就是存放地址的变量 指针和指针变量是两个不同的概念 但要注意的是:我们通常把指针变量叫做指针,但是实际意义不同 指针的本质就是一个操作受限的非负函数(指针不能加乘和除,但是能进行相减)
基本类型指针 # include <stdio.h> Int main () { Int *p //p是变量的名字, Int *p 表示p存放的是int类型变量的地址 int*p不变是定义了一个叫做*p的变量 int*p应该这样理解:p是变量名,p变量的数据类型是int*类型 所谓int*类型实际上就是存放int变量地址的类型 int =3; Int j; P=&i //p保存了i的地址,因此p指向i p不是i,i也不是p,准确的说:修改p的值不影响i的值,修改i 的值不影响p的值 p保存i的地址 因为p保存i的值,所以p指向i 因为p指向i,所以p就是i
星号的用法(*) *的含义 1.用作乘法 2.定义指针变量 int*p //定义了一个名字叫p的变量,int*表示p只能存放int变 量的地址 3.指针运算符 该指针运算符放在已经定义好的指针变量的前面 如果p是已经定义好的指针变量 则*p表示 以P的内容为地址的变量
|