一、指针
1.指针是用来装地址的数据类型,本质为变量
2.一般形式:基类型 *指针变量名 (基类型指所能装地址的数据类型)
int *p: *为类型标识符 (指针变量p指向i) 可以希望使用指针变量p来访问i
*p即为i本身
i= 100(直接访问) *p= 100(间接访问)
用途:为了在被调函数中修改主调函数的值
3.int *t (在未赋值的情况下称为野指针) 会导致程序崩溃
4.保存地址与基类型相同 要明确地表示指针变量指向谁
5.指针内部实现逻辑:
6.指针类型强制转换:char *p = (char *)&i
7.int i=1,char *p = (char *)&i ,if *p == 1,则为小端排序方式
8.对指针可以进行加法计算,结果与基类型有关
向后挪移n *sizeof(基类型)个字节
9.&与*在一起时可以互相抵消
9.a[0] = *(a + 0),a[i] = *(a + i)
p为变量可以进行++计算,但a为常量不能++计算
10.#define NULL 0 (不带参宏)
指针置为空指针表示当前指针变量不可进行变量访问
11.指针函数:返回值是指针的函数