理论教育 C语言程序设计应用教程-数组指针

C语言程序设计应用教程-数组指针

时间:2023-11-21 理论教育 版权反馈
【摘要】:数组的指针是指数组在内存中的起始地址,用数组名来表示,表示数组的第一个元素在内存中的地址。假设数组a的首地址是0x3000,即a的值是0x3000。例9.3 利用数组下标法输出数组全部元素的地址。在for循环结构中,通过调用printf()函数依次输出数组各元素的地址。

C语言程序设计应用教程-数组指针

数组指针是指数组在内存中的起始地址,用数组名来表示,表示数组的第一个元素在内存中的地址。例如:

inta[6];

数组名a就是该数组的起始地址&a[0],也就是该数组的指针。因此,可以用指针和数组名来引用数组元素。

例如:

程序段一:

int a[6] ;

int i;

for (i=0;i<6;i++)

a[i] =i; //利用数组名加下标引用数组元素

程序段二:

int a[6] ;(www.daowen.com)

int i ;

f o r ( i =0;i <6;i ++ )

* (a+i) =i; //利用数组的指针引用数组元素

两段程序是等价的。假设数组a的首地址是0x3000,即a的值是0x3000。因为数组a为整型数组,每个元素占4个字节,因此第一个元素a[0]的地址是0x3000,第二个元素a[ 1]的地址是0x3004(即a+1),依此类推,a[2]的地址为0x3008(即a+2),……,a[i]的地址为a + i * 4(即a+i)。所以,* (a +i)就是对a[i]的引用。

例9.3 利用数组下标法输出数组全部元素的地址。

编写程序:

创建一个名为“eg9_3.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:

本程序首先定义整型数组,通过调用printf()函数输出数组名。在for循环结构中,通过调用printf()函数依次输出数组各元素的地址。从程序的运行结果可以看出:数组名表示的地址与第一个元素的地址相同,说明数组名就是该数组的首地址。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈