黑马程序员技术交流社区
标题: 关于指针 [打印本页]
作者: Makeit 时间: 2015-11-11 00:17
标题: 关于指针
一,含义 两层含义: 1,变量 (保存地址,占有内存空间)
2,数据类型 (里面存储的类型是指针)
二,作用 存储地址,通过地址 直接对该地址的内存空间中的数据进行操作
三,怎么用 定义 类型 *指针名; int *p;
赋值 指针名=地址;p=&a;
四,什么时候用 需要存储地址, 以便于直接操作地址及地址对应的内存数据
五,特点 1,地址 指针是变量,分配后占有固定的内存空间,所以自身的地址不变,但其所存储的地址可以变化
2,&p 指针自己的地址 p指针存的的地址 *p指针存的的地址的内存空间
3,指针不赋值为野指针,不知指向何方
4,优先级在指针中的应用 int (*p)[3];(*先修饰p,表示p是一个指针,指向数组) int *p[3] ; (p和[3]先结合,*修饰整个数组,那么整个数组都是指针,这是在定义一个数组).
5,和之前变量的区别 函数调用时,变量传递的是数据 操作是自己取过来的数据,不是原数据,指针直接操作原数据
6,指针类型必须与所指变量类型一致;
7,64位编译器下,指针占8字节 32位是4个 16位是2个
六 今天编的代码
- //指针练习,用指针把a的值变为100
- #include <stdio.h>
- void change(int *p);
- int main()
- {
- int a=0;
- int *b=&a;
- change(b);
- printf("%d\n",a);
- return 0;
- }
- void change(int *p)
- {
- *p=100;
- }
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |