本文最后更新于 2024-10-19,距文章上次修改已超2个月之久……请注意内容的时效性~~

定义 赋值

定义格式 数据类型 = * + 变量名

int a = 3;
int *p = NULL; //定义指针p 值为Null(空
p = &a;  //将a的地址赋给指针p
/* “&”取地址 */

引用与运算

###初始化

int *p = NULL;
int a ; itn *p = & a;
int *p = newintintint; //申请空间给p *p内容不确定

lz5esvlm.png 理解为: p = a的地址 *p = a的值 p的地址 != a的地址

多重指针

int a = 1;
itn *p = &a;
int **p2 = &p;

三个变量的值都为 a 的值 即 1

指针&数组

int a101010;
int *p = a; //p存储a000的地址
cout << *p;  //输出p存储的a000的值
p++; //指向a111
cout << *p++p++p++; //输出a111 指向a222
p += 3; 指向a555
cout << &p; 输出p的地址