《C现代方法》 第八章 数组

来源:互联网 发布:java 日期比较 编辑:程序博客网 时间:2024/05/08 05:19



“如果程序操纵着大量的数据,那它一定是用较少的方法办到的。”

标量(scalar)具有保存单一数据项的能力。
聚合(aggragate)变量可以存储数值的集合。两种聚合类型:数组(array)和结构(structure)。

数组的长度用(整数)常量表达式说明

#define N 10
int a[N];

数组初始化式(array initializer):
1. int a[10] = {1,2,3,4,5,6,7,8,9,10};
2. int a[10] = {1,2,3,4,5,6}; /* initial value of a is {1,2,3,4,5,6,0,0,0,0} */
3. int a[10] = {0};
4. int a[] = {1,2,3,4,5,6,7,8,9,10};

sizeof(a) / sizeof(a[0]) 可以计算数组长度。

#define SIZE (sizeof(a) / sizeof(a[0]) )
for (i = 0;i < SIZE; i ++)
    a[i] = 0;

多维数组,和其他编程语言中的多维数组相比,C语言中的多维数组扮演的角色相对较弱,这主要是因为C语言为存储多维数据提供了更加灵活的方法:指针数组。