这两个概念都和数据的逻辑存储有关,所以理解起来比较难一点。
我先说一下用的最多的指针。我先举一个例子。
在上学的时候,每个人除了名字外,都有一个学号。在学校档案室中,保存着每个人档案。每个档案上都有学生的名字和学号。老师查阅档案,可以根据名字查阅,也可以根据学号。通常,档案都是按照学号的顺序保存着。使用学号查阅比较方便,但是要记住很多学号,就不容易。而名字就容易记忆。
我们把这个对应到程序中。每个档案相当于程序中的一个数据。档案的姓名相当与数据的名字,也就是变量名。而档案的学号相当于数据的保存地址。通常情况下,我们使用变量名就可以访问数据。但是某些情况,更快速访问档案,就可以使用学号来访问,这就相当于直接使用数据的保存地址来访问数据。而这个数据的保存地址也需要保存起来,这就是指针。保存起来,就需要给一个名字。这就是指针变量的变量名。
所以,大家通常说指针保存数据的内存地址。
关于位运算,普通开发用的不多。主要是在图形图像和网络通信中用的比较多。这一块主要理解二进制的转化,还有就是计算机的字长。在入门阶段,了解一下就可以了。 |