Advertisement

基于Proteus 51单片机仿真实例9、C语言数组的指针演示实例

阅读量:

1、指向数组的指针

每个变量都有自己的内存地址;同样地,在计算机中存储的数据结构如数组也是由多个数据单元组成;因此可以通过使用一种称为"pointer"的数据类型来访问这些数据单元的具体位置;具体来说;如果有一个pointer变量存储了一个特定数据块的第一个单元的位置信息;那么我们就说这个pointer变量是指向这个数据块的位置;而整个数据块的所有单元则可以通过这个初始位置进行访问;这种情况下;我们可以说这个pointer直接引用了这个数据块的位置信息

unsigned char a[]={0,1,2,3};

unsigned char *p;

p=&a[0];将数组a的首地址存放在指针变量p中。

按照前述定义可知,在C语言中变量声明与初始化机制中, 指针变量p将被赋值为所指对象a的空间起始位置. 这种表示方法使得程序运行时能够通过指针变量指向内存中的具体数据存储区域. 由此可见, 表达式 p = &a[0]; 实际上等价于 p = a; 这一简化形式不仅提升了代码可读性, 同时也减少了不必要的重复运算步骤.

变量p被赋值为数组a的第一个元素(首地址);当变量p加1时,则会指向数组中的第二个元素;以此类推,则有当变量p增加i时,则会指向该位置上的第i个元素

在引用数组元素时,通常采用其索引(例如a[i])。相比之下,使用指针不仅运行速度更快,并且能够节省内存空间。这一

全部评论 (0)

还没有任何评论哟~