这个程序产生的结果是:
总和是9
数组元素可以访问一个不恒定整数变量:
|
1
2
3
|
int
anArray[5];int
nIndex = 3;anArray[nIndex]
= 7; |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
int
anArray[5]; //
Ok -- 5 is a literal constant#define
ARRAY_SIZE 5int
anArray[ARRAY_SIZE]; //
Ok -- ARRAY_SIZE is a symbolic constantconst
int
nArraySize = 5;int
anArray[nArraySize]; //
Ok -- nArraySize is a variable constantenum
ArrayElements{ MAX_ARRAY_SIZE
= 5;};int
anArray[MAX_ARRAY_SIZE]; //
Ok -- MAX_ARRAY_SIZE is an enum constantint
nSize = 5;int
anArray[nSize]; //
Not ok! -- nSize is not a constant! |
总而言之,数组元素可以被索引与常量或non-constants,但是必须声明数组使用常量。这意味着数组的大小必须在编译时是已知的!
数组可以保存任何数据类型,包括浮点值,甚至结构:
|
1
2
3
4
5
6
7
8
9
|
double
adArray[5]; //
declare an array of 5 doublesadArray[2]
= 7.0; //
assign 7.0 to array element 2struct
sRectangle{ int
nLength; int
nWidth;};sRectangle
asArray[5]; //
declare an array of 5 sRectangle |
|
1
2
|
//
sets the nLength member of array element 0asArray[0].nLength
= 24; |
3278

被折叠的 条评论
为什么被折叠?



