指针是C语言中一个重要的概念,也是c语言的重要角色。可以说指针是c的精华所在,学习指针虽然不易,但是只要肯花上时间去反复的理解和实践,就一定可以很好的掌握它。
一、指针是什么
指针到底是什么?我们先举一个例子。假设我们在火车站 附近开了一家宾馆,这家宾馆有三千多间屋子,为了方便管理,我们给每个房间都加了编号,这样当旅客来投宿的时候,我们只需要告诉他房间号,他就可以找到他要入住的那个房间。对应到计算机当中,我们可以把整个宾馆想象成内存,而一个房间对应一个存储单元,房间的号码则对应存储单元的地址。通过房间号能够找到房间,那么很明显通过地址也能找到对应的存储单元。“地址”这个名字太“俗”了,于是c语言就把它形象化为“指针”。总结出来就是一句话:地址就是指针,指针就是地址。
二、指针变量
学习指针首先要知道指针与指针变量的区别,很多多初学者很容易把指针和指针变量给混淆,这里必须强调一下这两个绝对不是同一个概念。
一个变量的地址称为该变量的“指针”。如果有一个变量专门用来存放另一变量的地址(指针),则称它为“指针变量”。也就是说指针变量是用来存放地址的,指针变量的值就是地址(指针)。
指针变量的一般形式如下:
类型名 * 指针变量 [=初始值];
注意:指针变量中的内容存的是普通变量