黑马程序员技术交流社区
标题: 数组 [打印本页]
作者: 大悟云 时间: 2014-11-1 19:43
标题: 数组
1)数组的数据类型都是相同的
2)C语言不允许对数组的大小做动态定义
3)数组名代表数组的首地址,它是一个常量,其值不可以改变
4)数组的下标可以是常量或整型表达式
5)C语言规定,不能引用整个数组,只能逐个引用元素
6)必须先定义数组,后引用数组元素。
7)数组下标从0开始
8)若不对static数组元素赋初值,则系统会自动为全部元素赋以0值
例:static in a[3]; 等价于:a[0]=0; a[1]=0; a[2]=0;
9)数组中没有被赋值的元素并不是不占用内存,它们是有值的,但这个值是不确定的。
二维数组
数组类型 数组名[常量表达式1][常量表达式2]
其中,数据类型是指每个数组元素的类型。常量表达式1指出数组的行数,常量表达式2指出数组的列。行数*列数即得到数组的元素个数。
1) 数组行和列的下标都从0开始
2) 由于内存是一维的,C语言中二维数组在内存中存放是按行序优先,即在内存中先顺序存放第一行的各元素,再存放第二行的各元素,依此类推。
3) C语言中,一个二维数组可以被看成一个一维数组,其中每个元素又是一个包含有若干元素的一维元素。
4) int a[3][4] a和a[0]都代表首地址,但两都所表示的是两个不同的一维数组。C编译器认为a是一个具有3个元素的一维数组名,这三个分别为a[0],a[1],a[2],每个元素分别占用8个字节.a[0]是一个具有4个元素的一维数组名,这4个元素分别为a[0][0],
a[0][1],a[0][2],a[0][3],每个元素分别占用2个字节.
5) 第一维的长度不指定,但必须指定第二维的长度。
作者: wenchang1989 时间: 2014-11-1 19:49
能不能带点实例呢,表示有点晕!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |