C语言指针

准备内容:变量的地址,变量的内容,直接寻址,间接寻址.

(1).变量的地址

    变量在内存中所占存储空间的首地址.

(2).变量的内容

(3).直接寻址

    直接按变量名来存取变量的内容的访问方式.

(4).间接寻址

    通过指针变量(如P)间接存取它所指向的变量(如a)的访问方式.  

1.什么是指针?

  为了正确地访问这些内存单元,必须为每个内存单元编上号.内存单元的编号也叫做地址。既然根据内存单元的编号或地址就可以找到所需的内存单元,所以通常也把这个地址称为指针。

2.什么是指针变量?

      

  在C语言中,允许用一个变量来存放指针,这种变量称为指针变量。在C语言中,一种数据类型或数据结构往往都占有一组连续的内存单元。用“地址”这个概念并不能很好地描述一种数据类型或数据结构,而“指针”虽然实际上也是一个地址,但它却是一个数据结构的首地址,它是“指向”一个数据结构的,因而概念更为清楚。

变量的指针就是变量的地址。存放变量地址的变量是指针变量。

3.指针变量的定义

    其一般形式为:
       类型说明符   *变量名 ;
    其中,*表示这是一个指针变量,变量名即为定义的指针变量名,类型说明符表示本指针变量所指向的变量的数据类型。

4.指针变量的引用:

  指针变量同普通变量一样,使用之前不仅要定义说明,而且必须赋予具体的值。未经赋值的指针变量不能使用,否则将造成系统混乱,甚至死机。指针变量的赋值只能赋予地址,决不能赋予任何其它数据,否则将引起  错误。在C语言中,变量的地址是由编译系统分配的,对用户完全透明,用户不知道变量的具体地址。

  两个有关的运算符:

  • &:取地址运算符;
  • *:指针运算符(或称“间接访问” 运算符)。


C语言中提供了地址运算符&来表示变量的地址。其一般形式为:
    &变量名;
如&a表示变量a的地址,&b表示变量b的地址。

5.指针变量的应用

 (1) 

原文地址:https://www.cnblogs.com/zhang-jin-guo/p/4480601.html