首页 > 代码库 > 第十次作业总结

第十次作业总结

  1. 密码开锁

Int x=5342;/*变量x用于存放密码值5342*/

Int *p=NULL;/*定义整形指针变量P,NULL值为0,代表空指针*/

P=&x;/*将变量x的地址存储到p中*/

程序中定义了变量x来存放密码,在定义一个特殊的指针变量p,用于存放变量x的地址。这样既可以通过变量名x直接得到密码,也可以在不知道变量名的情况下,通过指针变量p所存放的地址找到密码值。

  1. 与直接使用变量x相比较,使用变量p访问变量x的过程实现了对变量x的见解操作。
  2. 在C语言中,把这种直接专门用来存放变量地址的变量称为“指针变量”,简称为指针。
  3. 定义指针变量的一般形式:

类型名  *指针变量名;

类型名指定指针变量所指向变量的类型,必须是有效的数据类型,如:int,float,char等。指针变量名是指针变量的名称,必须是一个合法的标识符。

  1. 定义指针变量要使用指针声明符:*

例如:int I,*p;

声明变量I是int型,变量p是指向int型变量的指针。

  1. 指针定义的例子

Int *p;

Char *cp;

Float *fp;

Double *dp1,*dp2;

  1. 对指针变量p赋值

P=&I;

P=0;

P=NULL;

P=(int*)1732;

第一条语句中的指针p被看做是指向变量i或存放变量i的地址,也就是将指针p和变量i关联起来。

第二条和第三条语句说明了怎样把特殊值0赋值给指针p,这时指针的值为NULL。常量NULL在系统文件stdio.h中被定义,其值为0,将他赋给指针时代表空指针,C语言中的空指针不指向任何单元。

最后一条语句中,使用强制类型转换(int*)来避免编译错误,表示p指向地址为1723的int型变量。

  1. 指针变量名是一个标识符,要按照C标识符的命名规则对指针变量进行命令。
  2. 指针变量的数据类型是他所指向的变量的类型,一般情况下一但指针变量的类型被确定后,他只能指向同种类型的变量。
  3. 在定义指针变量时需要使用指针声明标识符*,但指针声明符并不是指针的组成部分,例如:定义 int*p;说明p是指针变量,而不是*p。

第十次作业总结