`

C中有关数组的说明

 
阅读更多

下面介绍一下关于数组的一些说明:

 

  1.  在数组声明时必须定义数组长度,但也可利用空的方括弧[]对数组初始化,使编译器自动根据列表中的值自动计算数组长度。 例:
                        int array[12];
                        int array[]={1,2} //
          但是若数组声明的方式是这样的:
                        int array[12] = {1,2}  //其余未被声明的会初始化为0
               即:如果不初始化数组,数组元素和未初始化的普通变量一样,其中存储的是无用的数组;但若部分初始化数组,为初始化的元素则被设置为0.
   2.   C不支持把数组作为一个整体来进行赋值,也不支持用花括号括起来的列表形式进行赋值(初始化的时候除外) 例:
#define SIZE 5

int main(void)
{
   int oxen[SIZE] = {1,2,3,4} //这里可以
   int yaks[SIZE];
 
   yaks = oxen;                  //不可以
   yaks[SIZE] = oxen[SIZE]; //不正确
   yaks[SIZE] = {4,5,5,7};   //不起作用
}
    3.二维数组初始化
         int rain[3][3] = { {1,2},
                                {3,4,5},                           //用这种方式初始化相当于 1,2,0,3,4,5,1,0,0
                                {1}
                              }
        或
        int rain[3][3] = {1,2,3,4}      //用这种方式初始化相当于1,2,3,4,0,0,0,0,0
    4.关于数组名
           int array[12];
        以这种方式声明数组时,数组名其实是数组第一个元素的地址即与&array[0]等价,也就是说array是一个地址常量。可以用array +1 表示数组中第二个元素的地址,但不能用++array形式,因为++后面只能接变量而不能接常量。

   5.array[1] 和*(ar +1 )是等价的,而且不管ar是一个数组名还是一个指针变量,这两个表达式都可以工作。

0
0
分享到:
评论

相关推荐

    C语言中动态数组的定义

    正在BASIC语言中,DIM A(N)语句可以定义一个包含N个元素(N是未知数)的数组,而在C语言中,定义数组时必须要明确地说明其大小.但在设计程序时,经常会遇到数组元素个数未知的情况,数组的大小在最初不能预料,只有在程序...

    数据结构与C语言课程设计_数组的编码和解码

    规则说明: 设有一个数组A: array[0..N-1];存放的元素为0-N-1(1)之间的整数,且 。例如当N=6时,有:A=(4,3,0,5,1,2)。此时,数组A的编码定义如下: A[0]编码为0; A[i]编码为:在A[0],A[1],…,A[i-1]中比A[i]的值小...

    c语言指针数组-·详解数组指针与指针数组

    c语言指针数组 ·详解数组指针与指针数组 ·数组指针 ⾸先我们需要了解什么是数组指针以及什么是指针数组,如下图: int *p[5]; int (*p)[5]; 数组指针的意思即为通过指针引⽤数组,p先和*结合,说明了p是⼀个指针...

    C语言数组PPT

    数组PPT,简要说明数组的概念等基本知识

    查找(c语言字符串数组.cpp

    类别:数组 时间限制:1S 内存限制:256Kb 问题描述: 给定一个包含n个整数的数列A0,A1,A2,…An-1和一个整数k,依次输出 k在序列中出现的位置(从0开始计算)。 输入说明: 输入由两行构成,第一行为两个整数n...

    多维数组转一维数组 基于c语言的数据结构程序设计

    基于c语言的数据结构程序设计 附有报告

    C语言用指向数组的指针作函数参数小例子

    只是为了说明用指向数组的指针作函数参数而举的例子。用函数average求总平均成绩,用函数search找出并输出第i个学生的成绩。有些网上给出的方法有bug,这个是我自己修改过的程序。

    数组的定义,初始化和使用,C语言数组详解.pdf

    c语言数组 数组可以说是目前为止讲到的第一个真正意义上存储数据的结构。虽然前面学习的变量也能存储数据,但变量所能存储的数据很有限。不仅如此,数组和指针(后续会讲)是相辅相成的,学习数组可以为学习指针打下...

    c语言求二维数组鞍点.pdf

    c语言求二维数组鞍点 在上面的代码中,我们定义了一个3×3的二维数组matrix,并在main()函数中调用findSaddlePoint()函数来找到鞍点。findSaddlePoint()函数使用两个嵌套的循环来遍历数组,首先在每一行找到最小值...

    C语言二维数组几种常用的表示方法

    说明:常用的有以下几种二维数组的表示方法: (1)、第一种是普通的二维数组的表示方法。 (2)、第二种是用一维数组来表示二维数组,从显示的元素地址可以看出,二维数组和一维数组表示的二维数组在内存中的储存...

    C语言 指针数组详解及示例代码

    如果一个数组中的所有元素保存的都是指针,那么我们就称它为指针数组。指针数组的定义形式一般为: dataType *arrayName[length]; [ ]的优先级高于*,该定义形式应该理解为: dataType *(arrayName[length]); ...

    基于C语言实现用数组作函数参数控制流水花样(含源代码+使用说明).zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...

    C语言教学课件:14-3_指针数组(用于处理二维数组或多个字符串).ppt

    C语言教学课件:14-3_指针数组(用于处理二维数组或多个字符串).ppt

    指针数组和数组指针的区别.doc

    这样两者的区别就豁然开朗了,数组指针只是一个指针变量,似乎是C语言里专门用来指向二维数组的,它占有内存中一个指针的存储空间。指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间。 还...

    基于C语言实现用数组的指针控制P0 口8 位LED流水点亮(含源代码+使用说明).zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...

    c语言教程 数组

    c语言教程 数组的表示方法使用 注意问题 举例说明

    指针在一位数组和二维数组中的使用

    与指针有关的各种说明和意义见下表。 int *p; p为指向整型量的指针变量 int *p[n]; p为指针数组,由n个指向整型量的指针元素组成。 int (*p)[n]; p为指向整型二维数组的指针变量,二维数组的列数为n int *p() p为...

    C语言中二维数组指针的简要说明

    主要介绍了C语言中二维数组指针的简要说明,文章后也附送一个小练习题进行巩固,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics