C 数组要点

数组声明

 int ar[5]={11,22,};                                               //数组定义时,未被定义到的元素值为0
 int ar[5]={[3]=11,22,[0]=5566};                          //C99指定元素定义
 int ar[]={11,22,33,44,55};                                  //定义时数组可以自动计算元素个数

  1.    数组通过[n]访问元素 下标从0开始 合法下标为0--(N-1)

  2.    编译器无法检查下标合法性  由程序员自己保证正确

数组赋值

1.      数组不支持整体赋值 仅在定义时可用{}

              ar[5]={1,2,3,4,5};

 2.      数组不支持整体赋值:数组名单独作为右值 它以首地址的形式存在 指向第一个元素

               br=ar;                           //错误:将‘int *’赋值给‘int[5]’时类型不兼容

数组名单独作为右值 它以首地址的形式存在 指向第一个元素

         br=ar;                           //错误:将‘int *’赋值给‘int[5]’时类型不兼容

数组名单独作为函数参数 它以首地址的形式存在 指向第一个元素

    一维数组   

     int  ar[5]={0};

    void showArray(int ar[5],int n) ------------------------->showArray(ar,5);

    void showArray(int  *ar,int n)  ------------------------->showArray(ar,5);

   二维数组   

   

    int ar[3][2]={1,2,3,4,5,6};

    void showArray(int  ar[3][2] );------------------------>showArray( ar );

    void showArray(int  (*ar)[2] );------------------------>showArray( ar );

    void showArray(int   ar[2] );------------------------>showArray( ar[2] );

    void showArray(int   *ar );-------------------------->showArray( ar[2] );

猜你喜欢

转载自blog.csdn.net/weixin_42180737/article/details/83148947