一维数组
函数的声明
1、一维数组的创建及初始化
2、一维数组的使用
3、一维数组在内存中的存储
4、指针的初步了解
5、一维数组的指针访问
int main()
{
//1、一维数组的创建及初始化
//数组是一组相同类型元素的集合。
//数组的创建方式:
//类型名 数组名 [常量]; //这里只是在C语言环境中
//数组[]里的常量不能为0,不完全的数组化初始化,缺少的补0;
//数组[]中只能给一个常量才可以,不能使用变量。
//数组的初始化是指,在创建数组的同时给数组的内容一些合理的初始值
int arr[10] = {0};
int arr1[10] = {1,2,3,4,5}; //创建一个容量为10的数组并初始化部分值
int arr2[] = {1,2,3,4,5}; //创建一个数组
char arr3[10] = "abc"; //该数组是以'/0'为标志结束的,末尾有'/0'
char arr4[10] = {'a','b','c'};//该数组没有一'/0'为结束的标志
//2、一维数组的使用
int i = 0;
int sz = sizeof(arr1)/sizeof(arr1[0]); //计算数组的大小
for (i=0;i<sz;i++)
{
printf("%d ",arr1[i]); //输出数组中的每个元素:1234500000 arr中只初始化了5个值,其余的会补0
}
printf("\n");
//3、一维数组在内存中的存储
for (i=0;i<sz;i++ )
{
//打印每一个元素的地址,通过观察,我们会发现随着数组下标的增长,元素地址也在有规律的递增。
//(1)当数组类型为int时,地址增量为4个字节
//(2)当数组类型为char时,地址增量为一个字节
//结论:数组在内存中是连续存放的。
printf("&arr[%d]=%p\n",i,&arr[i]);
}
//4、指针的初步了解
//(1)内存中的每一个内存单元(字节)对应一个地址
//(2)在32位平台上指针大小为4个字节,64位平台上为8个字节
//(3)指针可以理解为一个变量,用来存放地址的一个变量
//指针的定义
// int *ptr = NULL;
/*char *ptr = NULL;*/
//5、一维数组的指针访问
//数组名是首元素的地址
printf("%p\n",arr);
printf("%p\n",*arr);
//数组名+整数的运算得到数组的每个元素的地址
for (i=0;i<sz;i++)
{
printf("&arr[%d] = %p\n",i,&arr[i]);
printf("%p\n",arr+i);
}
return 0 ;
}
数组的总结
最新推荐文章于 2022-08-08 18:43:50 发布