前言
上一篇文章初步认识了数组,在这篇文章,我们会了解一维数组的使用。
一、一维数组的使用
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
在使用数组时,我们需要用到一个名为下标的操作符[ ]通过它,我们就可以对数组中的元素进行赋值以及更改的操作。
#include<stdio.h>
int main()
{
//不完全初始化数组
int arr[5]={0};
//对此数组进行逐个赋值
for(int i=0;i<5;i++)
{
scanf("%d",&arr[i]);
}
//更改数组的某一位置中元素的值
arr[0]=5;
return 0;
}
二、一维数组在内存中的存储
我们打印一下数组的地址
#include<stdio.h>
int main()
{
//声明一个数组
int arr[5]={1,2,3,4,5};
//计算数组的长度
int lenght=sizeof(arr)/sizeof(arr[0]);
//打印数组中每个元素的地址
for(int i=0;i<lenght;i++)
{
printf("arr[%d]的地址为%p\n",i,&arr[i]);
}
}
运行结果如下:
如上图地址所示,每个元素的地址都是相连的,因此我们可以知道,计算机为数组开辟的内存是连续的。
三、数组名的内层意义
我们打印一下数组名
#include<stdio.h>
int main()
{
//声明一个数组
int arr[5]={1,2,3,4,5};
//计算数组的长度
int lenght=sizeof(arr)/sizeof(arr[0]);
//打印数组中每个元素的地址
for(int i=0;i<lenght;i++)
{
printf("arr[%d]的地址为%p\n",i,&arr[i]);
}
//打印数组名
printf("arr=%d",arr);
return 0;
}
我们看到打印发生了错误,但当我们把%d换成%p时,我们在打印一下
我们会发现,它打印的出来的值竟然时一个地址,并且和arr[0]的数组地址一样,由此我们可以知道,数组名实际上是数组中首元素的地址。
总结
以上就是今天要讲的内容,本文介绍了一维数组的使用,以及数组内存的连续性。