C语言问题,对C数组元素正确引用的是?

intc[4][5],(*cp)[5];cp=c;Acp+1B*(cp+3)C*(*cp+2)D*(cp+1)+3... int c[4][5],(*cp)[5];
cp=c;
A cp+1
B *(cp+3)
C *(*cp+2)
D*(cp+1)+3
展开
 我来答
未来需努力点缀
2012-09-16 · TA获得超过4678个赞
知道大有可为答主
回答量:850
采纳率:50%
帮助的人:507万
展开全部
解:
int c[4][5],(*cp)[5];
cp=c;
这里cp是二维数组c的首地址 cp本身也是二维数组

正确的是:C
*(*cp+2) *cp是cp[0][0]的地址 *cp+2就是cp[2][0]的地址
*(*cp+2) 就是cp[2][0]的值

其余的引用都是引用的地址
要想引用二维数组的元素值 必须使用两个**

希望能帮助你哈
追问
(*cp)[5];这个不是指向一维数组的指针变量吗?
追答
对  但是它实际也是一个行标不确定的动态二维数组
所以二维数组名可以直接赋值给cp 从而cp就是c首地址
用法和数组c相同
绛喵
2012-09-16 · TA获得超过273个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:123万
展开全部
C
因为int (*cp)[5]; 相当于 int a[5] ;

cp=c则 把c[4][5]的一维四个数赋给a[5]

那么调用就是*(*cp)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式