这个c语言题目求解,a,b,c,d有什么不一样,【0】不是表示第一个吗,为什么a,b为1呢,答案选

这个c语言题目求解,a,b,c,d有什么不一样,【0】不是表示第一个吗,为什么a,b为1呢,答案选d... 这个c语言题目求解,a,b,c,d有什么不一样,【0】不是表示第一个吗,为什么a,b为1呢,答案选d 展开
 我来答
Vecheer
2018-06-19 · TA获得超过103个赞
知道答主
回答量:26
采纳率:100%
帮助的人:10.4万
展开全部
注意以下几个概念。
首先,y[4]的意义是声明了包含4个pd的结构体数字,即y数组里有四个元素,每个元素都是一个结构体。y[4]=后面的大括号,是在给y数组里第一个结构体赋值,y数组里后面三个结构体元素没有赋值被缺省。
第二,要明白数组名y,其实质是个指针,y指针指向这个数组的第一个元素,这是关键。楼主可以去复习一下指针的访问方式。*y相当于就是y指针指向的变量。故ab两个选项,第一个y数组元素(是一个结构体)里面的,char型code数组,的第一个元素是1,因为code数组整体被赋值100,这个不过多解释。
第三,再说说d选项为什么错,前面说过了,*y指的是y指针指向的变量,你不可以使用:变量加->符号的形式来放问该变量里面的元素,只有指针才可以使用箭头符号访问其中元素。
回答完毕。
更多追问追答
追答
前面打错字了,是声明了包含4个pd的结构体数组不是数字
追问
谢谢你打这么多,我还有点疑问,为什么y【4】中只把100赋予它,后面不是还有个10吗,为什么又把100赋值给char code【5】了,还是说code【0】总是等于1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式