指针的基本概念
首先去了解一下内存的概念
内存:(锅)
1.在计算机里面,有一个很大的处理厂,我们可以把这个处理厂看成是内存。
2.程序进行运算都是在内存中运行的。
总结:内存是数据的处理场地
再去了解一下外存的的概念
外存:数据的存放场地(电冰箱)
当我们编写一个c程序并且运行之后,他也会放进我们的内存中。
什么是指针:
1.c程序要运行,都是在内存中进行运行的。
2.而在c程序中一般会有很多的变量,windows就会为程序中的每一个变量分配一个存储单元。
3.因为内存是比较大的,为了方便管理,windows就把内存分成很多一小块的单元,这个单元就被称作为存储单元。
4.存储单元就是内存中的一个小区域。
5.存储单元为了以后便于区分,他们也会编址。
6.int a;(张三买了一栋房子,开发商就会为它分配一套房子。
A:因为a是一个变量,所以winows肯定会为这个变量分配一个存储单元
B:a = 5;此时windows会马上通过变量名a,找到为变量a分配的存储单元,然后把值5放入那个单元中去
C:我们以前一直都认为5会把值赋给变量a,变量a是不能够存储数值的,应该是把5
放到变量a分配的存储单元中。
7:以前都是通过变量名去找到为该变量名分配存储单元
8:以前要为变量赋值实际上经过了两步
第一步:找到变量分配的存储单元(地址)
第二步:再把值写入到那个地址中
9:把通过变量名找到地址,然后为地址赋值的方式被称为间接方式。他的效率很低。
10:a = a+1;
A:先要从a的地址中读出其中的值
B:把该值加一之后重新写回到那个存储单元中
总结:指针就是地址。