S C i 卜NOL & TE Q 月N创,)《白Y INI: 口书明A T I仁别
T 技 术
C 语言数组在使用 中常见 的几种错误
刘莉娜
(包头农牧学校 0 14030)
摘 要: 对C 语言的数组在定义和使用过程中出现的几种错误进行了讨论,指出了出错的原因,并举例分析具体说明,给出正确结论。
关键词: C 语言 数组 数组元素
中图分类号:TP 3 文献标识码:A 文章编号: 1672一379 1(2007)07(a 卜009 8一0 1
在C语言中,对数组定义的理解虽然看似 A 、 加t bI Z*3 51 B 、 纽t bl l o一101 增运算不断改变其地址值 ,从而达到给数组元
简单,但由于数组的使用范围相当广泛 ,在对 C 、1爪 n o D 、# deflne s lZE 10 I 素赋值的 目的。而选项B 中想当然的把数组
字符串、指针、函数等的过程中,都离不开数 5 习of ( ”%d l ,&‘n) ; int bl ll 】,nti bI lS zE I 名看作指针变量,利用它来使指针下移,指向
组。因此,有必要对数组在具体使用过程中容 对于选项A ,其下标虽为常量表达式,但 下一个数组元素 ,这是完全错误的。
易写错的、疏忽的、误解的、不易发觉的一些 2 ,3 。5 不能确定数组元素的个数 ,不能为整型
问题给予强调和说明。 常量。选项B 中的下标值为0 ,不符合定义数 4 多维数组中数组元紊的表示形式容易出
组的常理。在 C 选项中,虽先定义变量 ,给它 错
1 数组定义与使用时用错括弧 赋予确定的值 ,然后再定义数组 ,但 C 语言中 多维数组中数组元素的使用形式多样,必
其它高级语 言在定义和使用数组时多数 不允许在定义数组时使用变量做数组的下标。 须正确分析准确判断。由于多维数组下标个
用圆括弧,而 C 语言规定使用方括弧。定义多 而D 选项是选定义符号常量IS ZE ,然后使用 数多,但数组元素在内存中所 占的存储单元的
维数组时,其它高级语言中数组的各维下标大 它来定义数组b 。故正确答案为D 。 排列有一定的规则,在使用时,利用其规律 ,既
多数放在一个括弧中,而C 语言对多维数组的 可以使用下标表示 ,也可以灵活使用数组名作
定义及应用中,数组元素的每个下标数据必须 3 数组名作地址时理解出错 地址表示 ,还可以使用指针变量来操作。
分别用方括弧括起来。这样,学习过其它高级 数组名代表数组的首地址 ,且仅为首地 例7 :若有定义:int aI3)[41,( )不能表示
语言的人尤其容易按以往的习惯写错用错。 址,是常量不是变量,不能等同于指针变量。 数组元素al l ll l ]
例 1:在定义ni t 术 亚3】。之后 ,对a 数组应 例4 :下列程序段是给数组b 的元素赋值, A 、*(&a [ 1]+ 1 B 、,(al l l川) C 、
用正确的是( ) 不能选择的答案是() (*(a+ 1)川) D