LFMY

导航

2014年3月21日 #

多维数组的理解(可能导致“致命错误”)

摘要: /**C语言中只有“数组的数组”,即“一维数组”,并称为“多维数组”。*/以char szArr[][4][3];为例该多维数组应该这样理解:(1)一维数组szArr[]的单元为一个char[4][3]的二维数组;(同理,szArr[][4]的单元为一个char[3]的一维数组)(2)当“数组名单独”出现的时候,“编译器”将其解释为“指向该‘一维数组’第一个元素”的“指针”;(所以,有时候我们会以为szArr[]的单元是一个二维指针,但可惜,事实并非如此)(3)在函数传参的时候,数组名被“编译器”解释为“指向该‘一维数组’第一个元素”的“指针”;(4)牢记一点:指针和数组名存在根本的不同。常见 阅读全文

posted @ 2014-03-21 10:58 LFMY 阅读(277) 评论(0) 推荐(0)