学习目标:
掌握指针的应用
学习内容:
地址
遇到的名词的理解
指针的理解及应用
学习时间:
2022-2-26
学习产出:
1,地址:
简单抽象的理解,地址是一定大小用来存放数据的特定位置,
地址:100 | 108 | 116
值 : 12 | 10 | 02
每个bit 对应的地址位+1, 一般读取的地址都是首地址
左值&右值
左值:指明对象,一般为一个变量 可以被声明。
右值:表示一个值
左表达式=右表达式;
2,指针
& 用于产生操作数的 内存地址
int a =0;
int *b=&a;
printf("%x\n",&a)
打印出来的结果的为整型变量a的地址。
int * b 是定义变量b为指针类型。 含义: 访问变量所指向的地址—>间接访问
* 单目操作符
理解: *b 是一个指向特定地址的值
*b=&a;
可以理解*b 的右值为0,地址和变量a 相同。
简单理解 符号* 表示去访问 a 地址下的值, 而变量b 的地址是&赋予的
*&a=25
其实所表达的意思就是 在将a=25 赋值给a的地址空间。
a++代表先取值,后运算。
++a代表先运算,后取值。
a=1;
如b = a++;
得b = 1
若b = ++a;
得b = 2