Chinaunix

标题: 搞不懂的二维数组???? [打印本页]

作者: onlyunix    时间: 2004-09-23 15:13
标题: 搞不懂的二维数组????
刚才看谭浩强的c语言教材,看到二维数组这快有个不明白的地方。书上原话是这么说的。“在程序中如果引用一个二维数组a[j],在执行时实际上按
i*n(列)+j公式计算出该元素与数组第一个元素的相对位置,然后计算出它的地址,访问该单元,因此,实参为二维数组,形参为一维数组是允许的。这段话都还能理解,可接下来它的一句注意:不应直接用a,因为a是二维数组,而形参arr定义为一维数组(float arr[]),二者不匹配,故应用a[0]作实参。这前后不是自相矛盾吗?而且后面的举列也是直接用a作为形参的。到底是哪个地方说错了?还是哪个地方印刷错了?

知道的告诉我。谢谢!
作者: onlyunix    时间: 2004-09-23 15:27
标题: 搞不懂的二维数组????
刚才我在linux9。0上做了个测试,两种情况都能得到结果。只不过其中直接引用a会warning,说类型不匹配?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2