一道简单的C语言题

2.设有以下说明和定义语句,则下面表达式中值为3的是。structs{inti;structs*i2;};staticstructsa[3]={1,&a[1],2,&a[... 2.设有以下说明和定义语句,则下面表达式中值为3的是。
struct s
{ int i;
struct s *i2;
};
static struct s a[3]={1, &a[1],2,&a[2],3,&a[0]};
static struct s *ptr;
ptr=&a[1];
A)ptr->i++ B)ptr++->I C)*ptr->i D)++ptr->i
答案选什么?为什么?
展开
 我来答
匿名用户
推荐于2018-03-26
展开全部
答案为D
a[3]数组之中元素值(每一个数组元素都是结构体)
a[0] ={1, &a[1]}
a[1] ={2,&a[2]}
a[2] ={3,&a[0]}

ptr =&a[1];
选项A ptr->i++ = 1+1 =2;
选项B
ptr++->i =(ptr->i)++
此时ptr->i =2,由于是后缀,所以在此式子之后才变化
B、D就是++i,i++区别了。
选项C为
*ptr->i =*(ptr->i) //错误
选项D
++ptr->i = ++(ptr->i)
Internetwind
2012-09-14
知道答主
回答量:89
采纳率:100%
帮助的人:22.5万
展开全部
其实这就是个循环链表,顺便理解自增操作就行了。
可知a[2].i 的值为3,故选D。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
香睿力亦玉
2019-06-25 · TA获得超过3884个赞
知道大有可为答主
回答量:3156
采纳率:27%
帮助的人:433万
展开全部
argc
是传参个数,包括程序本身,就是exam
123的个数,2;
argv
是第一元素的个数,以上例来讲,就是123的个数,3;

答案应该是
6;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式