您的位置:首页 > 编程语言 > C语言/C++

总结数组的相关知识

2017-12-04 03:23 295 查看
一、一维数组的创建和初始化

  1  数组的创建:

    数组是一组相同类型的元素集合

    数组的创建方式:

    typ_t//是指数组的元素类型  arr_name      [const_n]//是一个常量表达式,用来指定数组大小

    数组创建的实例:

    int a[10]={0,1,2,3,4,5,6,7,8,9};

    int a[10]={5,8,7,6};后面没有赋值的元素值默认为0

    int a[];错误

    数组创建, []  中要给一个常量才可以,不能使用变量

  2 数组的初始化:

     数组的初始化是指,在创建数组的同时给数组的内容一些合理初始值(初始化)

  3  对于下面的代码要区分,内存中如何分配:

  


  
  
  
二、一堆数组的使用

        数组访问操作符

      int arr[10];
int sz = sizeof(arr)/sizeof(arr[0]);
#include<stdio.h>
#include<windows.h>
int main()
{
int arr[10]={0};
int i=0;
for(i=0;i<10;i++)
{
arr[i]=i;
}
for(i=0;i<10;i++)
{
printf("%d",arr[i]);
}
system("pause");
return 0;
}
     总结:1.数组是使用下标来访问的,下标从0开始。

                2.数组的大小可以通过计算得到。
三、一堆数组在内存中的存储

     #include <stdio.h>
int main()
{
int arr[10] = {0};
int i = 0;
for(i=0; i<sizeof(arr)/sizeof(arr[0]); ++i)
{
printf("&arr[%d] = %p\n", i, &arr[i]);
}
return 0;
}    输出结果如下



    得出结论:数组在内存中是连续存放的

一个详细的编址:



   结论:1.内存中的一个内存单元(字节)对应一个地址

             2.在32位的平台上指针的大小是4个字节,64位平台是8个字节

数组的数组名其实是数组首元素的地址

二维数组一般形式:类型说明符 数组名[常量表达式1][常量表达式2];


例如:int a[3][4];可以看成是包含3个一维数组,每个一维数组里包含4个元素

二维数组在内存中的存储。






   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言