前言
在讲指针之前我们要知道什么是指针
1、指针就是个变量,用来存放地址,地址唯一标识一块内存空间
2、指针的大小固定是4/8个字节(32位平台/64位平台)
3、指针是有类型,指针的类型决定了指针的±整数的步长,指针解引用操作的时候的权限
4、指针的运算
1、字符指针
字符指针是指向字符的指针
下面这个代码是把字符串hehe首字符的地址放在pstr中
2、指针数组
指针数组是用来存放指针的数组
3、数组指针
(1)数组指针的定义
数组指针是能够指向数组的指针
(2)&数组名和数组名
从这张图可以看出
数组名表示数组首元素的地址
&数组名表示数组的地址,不是数组首元素的地址,+1跳过的是整个数组的大小,所以&arr+与&arr相差40
(3)数组指针的使用
4、数组和指针的传参
(1)一维数组的传参
(2)二维数组的传参
(3)一级指针的传参
(4)二级指针的传参
5、函数指针
函数指针是指向函数的指针
这两个地址都是test函数的地址
pfun1可以存放。pfun1先和*结合,说明pfun1是指针,指针指向的是一个函数,指向的函数无参数,返回值类型为void