一道c语言选择题,为啥这题选A啊,这种类型的题都不是很懂...
答案:2 悬赏:20 手机版
解决时间 2021-02-19 22:58
- 提问者网友:欲望失宠
- 2021-02-19 18:38
一道c语言选择题,为啥这题选A啊,这种类型的题都不是很懂...
最佳答案
- 五星知识达人网友:鱼忧
- 2021-02-19 19:22
. 成员选择(对象),形式:对象.成员名
-> 成员选择(指针),形式:对象指针->成员名
在这里,p是数组名,也是一个指针,所以,p->k=2;是正确的。
而p[0]是一个结构体(是一个对象),只能使用p[0].k=2;而不能使用p[0]->k=2;追问那选项b和选项d的“abc”和'a'是什么?还有一个问题就是结构体或指针跟的这个成员名必须跟int型吗?这道题他就跟的k。追答“abc”是一个字符串,
'a'是一个字符。
不是必须为int的。
-> 成员选择(指针),形式:对象指针->成员名
在这里,p是数组名,也是一个指针,所以,p->k=2;是正确的。
而p[0]是一个结构体(是一个对象),只能使用p[0].k=2;而不能使用p[0]->k=2;追问那选项b和选项d的“abc”和'a'是什么?还有一个问题就是结构体或指针跟的这个成员名必须跟int型吗?这道题他就跟的k。追答“abc”是一个字符串,
'a'是一个字符。
不是必须为int的。
全部回答
- 1楼网友:蓝房子
- 2021-02-19 20:42
其实看一下,B,D的赋值方法是错误的,或者说C语言没有规定这样的赋值方式。
B项应该这样赋值:strcpy(p[0].s,"abc")
D项应该这样赋值:p->s[0]='a'
B项应该这样赋值:strcpy(p[0].s,"abc")
D项应该这样赋值:p->s[0]='a'
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯