今天开始学习指针,指针在C语言中具有很重要的地位,按照老师所说,学C学不好指针跟没学一样,可见指针在C语言中的重要地位.废话不多说,首先我们先要知道什么是指针.

指针:指针是一个变量,它存储另一个对象的内存地址,如果一个变量存储另一个对象的地址,则称该变量指向这个对象 。

换言之指针也是一种变量,只不过和平常变量不同的是指针内存储的是另一个对象在内存中的存储地址.指针内的值是一个十六进制的数值.

 

由于指针值是数据,指针变量可以赋值,所以一个指针的指向在程序执行中可以改变。指针p 在执行中某时刻指向变量x,在另一时刻也可以指向变量y

1.   定义的格式

l   数据类型 *指针变量名;

l   int *p;//跟定义普通变量不同的是指针变量前面需要加*

2.   先定义后赋值

l   简单取值

int a = 10;

int *p;

p = &a;[A1] //&取址符

printf(“%d”, *p[A2] );

int nums[10];

p=nums;

l   简单改值

*p = 9;

3.   定义的同时赋值

int a = 10;

int *p = &a;

4.   注意点

l   int *p;   p = 1000;

l   int *p;   *p = 100;

l   int *p;  *p = &a;

l   &p输出指针里面存储的地址值

l   其他指针类型说明,比如float *p;  char *p;

不能乱用类型,比如int a = 10;  float *p = &a;


 [A1]为指针赋值,赋值运算符右侧必须是一个地址,如果是普通变量需要在前面加一个取地址运算符 &;如果是另一个指针变量或者是一个数组,不需要加 &运算符

  •  [A2]运算符 * 用于返回指针指向的内存地址中存储的值

 

 

posted on 2017-04-13 19:02  黯然回眸  阅读(244)  评论(0编辑  收藏  举报