C语言程序设计(第5章数组)3

文章作者 100test 发表时间 2007:03:10 17:19:40
来源 100Test.Com百考试题网


5.3 多维数组
C语言允许有大于二维的数组,维数的限制(如果有的话)是由具体编译程序决定的。多维数组的一般说明形式为:
Type-specifier name [a][b][c]...[z].
由于大量占有内存的关系,二维或更多维数组较少使用。如前所述,当数组定义之后,所有的数组元素都将分配到地址空间。例如,大小为( 10,6,9,4)的四维字符数组需要10×6×9×4即2160字节。
如果上面的数组是两字节整型的,则需要4320字节,若该数组是双字型的(假定每个双字为8字节)则需要34560字节,存储量随着维数的增加呈指数增长。
关于多维数组,需要注意一点:计算机要花大量时间计算数组下标,这意味着存取多维数组中的元素要比存取一维数组的元素花更多的时间。由于这些和其它原因,大量的多维数组一般采用C语言动态分配函数及指针的方法,每次对数组的一部分动态地分配存储空间。
多维数组传递给函数时,除第一维外,其它各维都必须说明。例如,将数组m定义成:
int m[4][3][6][5].
那么接收m的函数应写成:
func1 (d)
int d[][3][6][5].
当然,如果愿意,也可加上第一维的说明。

相关文章


山东:2005年计算机等级考试PETSNIT考试开始报名
心得经验:计算机二级考试备考秘诀
C语言程序设计(第5章数组)4
C语言程序设计(第5章数组)3
北京:2005年全国计算机等级考试5月24日起可查询成绩
等考上机考试编程如何避免范围性错误
C语言程序设计(第5章数组)2
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛