zoukankan      html  css  js  c++  java
  • 数组

    初始化方式:
    int a[3] ={10,9,6};
    int a[3]={10,9};
    int a[]={11,7,6};
    int a[4]={[1]=11,[0]=7};

    常见错误:

        int a[];
        int [4]a;
        int a[b];
        a[10]=0;
        a={10,11};
        a[4]={10,9,8,5};
    //只有在定义时才可以全部初始化
    内存分配
    存储内存分配,内存的分配是从高地址到低地址,数组元素是从低到高。

    1、计算元素个数:
    例:
    int ages[]={10,11,12};
    int count = sizeof(ages)/sizeof(int);
    2、数组下标从0开始:
    例:
    int a[10]
    a[10] =11;//错误写法
    3、定义数组与数组元素的区别
    定义数组 数组名前有类型修饰符 。 
    数组元素,不带类型修饰符

     
    数组与函数
    1、 数组作为函数参数,可以省略元素个数
    2、 数组作为函数参数,传递是整个数组的地址,修改函数形参数组元素的值,会影响到外面的实参数组
    例 1:
    void change(int array[])
    {
        //printf("array==%p ", array);
        array[0] = 100;
    }
    void change2(int n)
    {
        n = 100;
    }
    int main()
    {
        int ages[6] = {10, 11, 10, 11, 10, 11};
        //printf("ages==%p ", ages);
        change(ages);
        //change2(ages[0]);
        printf("%d ", ages[0]);
        return 0
    ;
    }
    例 2:
    int maxOfArray(int array[], int length)
    {
        // 数组当做函数参数传递时,会当做指针变量来使用,指针变量在64bit编译器环境下,占据8个字节
        int size = sizeof(array);//在调用函数时,不可以这样求数组长度
        printf("array=%d ", size);
        return 0;
    }

    二维数组:
    初始化方式:
    int a[3][4]={1,2,3,4,5,6};
    int a[3][4]={{},{},{}};
    int a[][5]={3,12,13,2,21,1};
    注意错误:
    int a[3][4];
     a[3] ={};//下标最高为2
  • 相关阅读:
    Android Studio 字体和字号调整
    【IDEA】项目中引入Spring MVC
    【Double】double精度问题和int、long除不尽取舍问题
    【进制转换】原码反码和补码的理解以及进制转换
    【工具】SwitchHost的使用
    【工具】谷歌浏览器使用技巧
    【Git和GitHub】学习笔记
    【IE兼容性】代码中多语言样式+IE不兼容解决
    【Trello】使用指南
    【实操】进制转换:除基倒取余法
  • 原文地址:https://www.cnblogs.com/Alling/p/3971398.html
Copyright © 2011-2022 走看看