指针:
什么是指针:指针是一种数据类型(无符号整数,代表了内存的编号,每个编号表示一个字节),使用它可以定义出指针变量。32位系统指针取值范围0~4G(32个1)
为什么使用指针:
1、函数之间需要共享变量(全局变量变量虽然也可以但不易过多),可以把变量的所用的内存地址编号传递给其它函数,以达到共享变量的目的。
(全局变量命名冲突,不会释放浪费内存) 但是用指针变量的值可能会修改,可以配和const使用 void func(const int * p);
2、(配合堆内存);堆内存无取名字,只能获取到堆内存的地址编号。
3、(优化传递速率);由于函数之间采用值传递进行传参(内存拷贝),当传递字节数较多的变量时效率会很低,如果只传递变量的地址只需要4字节(64系统8字节);
如何使用指针:
定义:类型* 变量名_p;
注意: 1、指针变量的用法与普通变量不同,为了防止混用一般指针变量都以p结尾,以示区别。
2、一个*只能定义出一个指针变量,不能连续定义。
int* p1,p2