Linux下C语言教程-李慧芹老师-第六章
目录
指针
变量与地址
int i=100;
i
是变量名,也就是地址。
100
是存放在这个地址的变量的值。
指针与指针变量
1 |
|
p是一个指针变量,他所存放的值是指针,指向另一个变量i
的地址。
直接访问与间接访问
同样对于上面那个存放值为100
的变量,既可以通过i
直接访问,也可以通过*p, **q
来间接访问。
1 |
|
空指针与野指针
- 野指针:
int *p = 0x14532534
,不确定这个地址的情况,盲目的指过去,那么读或者写都是非法的。 - 空指针:
int *p = NULL
,避免野指针。
1 |
|
空类型
void *q
万能类型。
定义与初始化的书写规则
1 |
|
指针运算
&
*
关系运算 ++
--
指针与数组
指针与一维数组
1 |
|
指针与二维数组
1 |
|
指针与字符数组
1 |
|
const 与指针
常量指针:指向常量的指针
const修饰*p,指针指向的值不能变
指针常量:这个指针是一个常量
const修饰指针,指针指向不能变
1 |
|
指针数组与数组指针
数组指针:指向数组的指针。
【存储类型】 数据类型 (*指针名)【下标】 = 值
如:
int (*p)[3];
看成int[3] *p;
指针数组:
【存储类型】 数据类型 * 数组名【长度】
如:
int *arr[3];
看成int *[3] arr;
1 |
|
多级指针
Linux下C语言教程-李慧芹老师-第六章
http://sinlatansen.github.io/2024/04/11/Linux下C语言教程-李慧芹老师-第六章/