zoukankan      html  css  js  c++  java
  • C-数组

    1, 特点

    •  只能存放一种类型的数据, 比如int类型的数组、float类型的数组
    • 存放的数据成为“元素”

    2, 定义格式

          类型 数组名[元素个数】

          int     ages[5]

    3,正确:

          int ages[5] = {[3] = 10, [4] = 11};

    int ages['A'] = {10, 11, 12, 14, 16};
    
    
    int size =  sizeof(ages);
    
    printf ("%d
    ", size);//数组占据多少个字节
    
    
    结果为260//

    int ages[5] 在内存中的存储形式:

    所以int ages['A'] 相等于 int  ages[65] 一共有 65*4 个字节

      1,   错误写法:int ages[5];

               ages = {10,11,12,14};

          //只能在定义数组的同时进行初始化

      2,  正确写法:int count = 5;

                int ages[count];

               ages[0] = 10;

               ages[1] = 11;//定义数组和初始化没有同时进行

          错误写法:int count = 5; int ages [count] = {10, 11, 12};

          //如果想在定义数组的同时进行初始化,数组元素的个数必须是常量,或者不写

    • 计算数组元素个数 int count  = sizeof(ages)/sizeof(int);

    数组 在内存中的存储细节

      数组里面的元素是从小到大排列的

      如

    int main()
    {
           char cs[5] = {'a', 'A', 'D', 'e', 'f'}
    }                                                          

         

    int ages[3] = {10, 19, 18};

    ages地址为0x7ff5df43bd8

    ages[0]:   0x7ff5df43bd8

    ages[1]: 0x7ff5df43bdc

    ages[2]:   0x7ff5df43be0

    元素地址与数组下标一样是递增的 

    数组与函数

    //数组作为函数参数,可以省略元素个数
    //数组作为函数参数,传递是整个数组的地址,修改函数形参数组元素的值,会影响到外面的实参数组
    //数组作为函数参数传递时,函数当做指针来使用,在64bit编译器环境下,占据8个字节
    //
    //改了里面的数组相当于改了外面的数组

    void change (int array[])

     

     

  • 相关阅读:
    Python常见的几种算法
    Python的八种数据类型
    网络协议
    Python基本知识
    Python简介
    Windows10 java环境配置
    linux 为动态分配的Virtualbox虚拟硬盘扩容
    ubuntu 18.04.1安装hadoop3.1.2
    linux 安装virtualbox5.2
    这是写给我自己看的!!
  • 原文地址:https://www.cnblogs.com/IDRI/p/4925299.html
Copyright © 2011-2022 走看看