C语言的题目。 为什么选A啊?求大神赐教

 我来答
lcy8760450
2015-09-05 · TA获得超过956个赞
知道小有建树答主
回答量:610
采纳率:64%
帮助的人:392万
展开全部
错在int *t
它是一个指针,必须先有指向的地址才取*t;
题中定义了*t;后就直接用*t = *p;将会报错
更多追问追答
追问
t=(int *)malloc (sizeof(int)) 是不是就行呢
追答
iamkunio
2015-09-05 · TA获得超过567个赞
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:114万
展开全部
参考B选项很容易看出A选项的问题所在。这道题主要考查C语言里面指针的一个易混淆的点。
B选项里面t是一个整形数据,A选项里面t是一个指针。在A选项里,p和q分别指向i和j在内存中的位置,所以*p和*q是合法的表达式,但是对于t来说,由于它的值是随机的,所以它指向的那片内存空间是不可用的,这种情况下你用*来对t解除引用当然就不合法了。
追问
了解了。谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-09-05
展开全部
这题目不完全怎么看啊,要看题的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式