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
  • 相关阅读:
    【转】 cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
    HDU How many prime numbers
    《大学ACM的总结 》(转载)
    POJ 最小公倍数
    HDU 开门人和关门人
    HDU shǎ崽 OrOrOrOrz
    HDU Saving HDU 2111
    HDU 1106 排序
    strtok函数()
    HDU 2187汶川地震
  • 原文地址:https://www.cnblogs.com/Alling/p/3971398.html
Copyright © 2011-2022 走看看