C++的指针
指针变量的定义和使用
指针的作用:可以通过指针间接访问内存。
- 内存编号是从0开始记录的,一般用十六进制数字表示。
- 可以利用指针变量保存地址。
指针就是一个地址。指针变量就是用来存放地址的。
可以通过p去使用它,也可以去访问它。
指针所占内存空间
提问:指针也是一种数据类型,那么这种数据类型占用多少内存空间?
sizeof§等价于sizeof(int)
p 等价于 int*
空指针和野指针
空指针:指针变量指向内存中编号为0的空间。
用途:初始化指针变量。
注意:空指针的内存是不可以访问的。
野指针:指针变量指向非法的内存空间
总结:空指针和野指针都不是我们申请的空间,因此不要访问。
const修饰指针
const修饰指针:常量指针
const修饰常量:指针常量
const即修饰指针,又修饰常量
记忆技巧:const翻译为常量,int * 翻译为指针。比如:const int *p为常量指针;int *const p为指针常量。const修饰的内容是不能修改的。例如:const int *p中const修饰的是int * ,所以指向不能修改。int * const p中const修饰的是p,所以指向的内容不能修改。
指针和数组
作用:利用指针访问数组中元素
指针和函数
作用:利用指针作为函数参数,可以修改实参的值
总结:如果不想修改实参,就用值传递,如果想修改实参,就用地址传递。
指针、数组、函数
案例描述:封装一个函数,利用冒泡排序,实现对整型数组的升序排列。
- 先创建数组
- 创建函数,实现冒泡排序
- 打印排序