C语言题目!!

想问下这题怎么看出什么指针的指针来着p根本不是二维呀求ABCD分析一下... 想问下 这题怎么看出什么指针的指针来着
p根本不是二维呀
求ABCD分析一下
展开
 我来答
碧海风云

2019-03-16 · 碧海风的秘密小据点!
碧海风云
采纳数:909 获赞数:10280

向TA提问 私信TA
展开全部

首先分析一下定义语句:

  1. a[2][3],是个二维数组。二维数组的某一行,也可以当做一个一维数组使用,例如a[0], a[1]。

  2. *p[3],是一个指针数组。

  • A. p=a;
    p为数组名,不能被赋予其他值。

  • B. p[0] = a;
    p[0]是一个int型指针,而a是二维数组名,赋值左右类型不符。若p[0] = a[0]则可以,因为a[0]是一个一维数组,其数组名可当做指向首元素的指针使用。

  • C. p[0] = &a[1][2];
    p[0]是一个int型指针,a[1][2]是个int型,对其取地址即可赋值给int型指针。

  • D. p[1] = &a;
    赋值左右类型不符。二维int数组地址不能赋值给int指针。

百度网友3fe025987
2019-03-16 · TA获得超过1874个赞
知道小有建树答主
回答量:1055
采纳率:62%
帮助的人:535万
展开全部
这么理解吧 你完全可以卸载这个APP了
P[0] P[1] P[2]分别是三个int型指针,a[2][3] 有6个int元素.
显然C正确
A错误. 在声明的时候 int (*p)[3] = a; 不然要先malloc 空间后 再 p = a;
B错误 P[0]是一个指向int型的指针, a和&a[0]的值一样 但意思不一样 a+1 = a[1] 而 &a[0]+1 = a[0][1]
D错误 P[1] = &a[0] 这样也正确 a[0][0] a[0][1] a[0][2] 是连续的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梁梁na
2019-03-16
知道答主
回答量:1
采纳率:0%
帮助的人:742
展开全部



超走心的回答了,给个采纳吧。还没听懂可以问我哈

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蜡笔大海
2019-03-16 · TA获得超过251个赞
知道答主
回答量:814
采纳率:30%
帮助的人:77.1万
展开全部
数组与数组可以一对一,如果没有,自动扩展
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
各国乖宝宝
2019-03-16 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:566
采纳率:28%
帮助的人:40.3万
展开全部
Basic语言就有条件换行的指令!就是指针的原型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式