标题:这题怎么解?
只看楼主
考试卷100
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-13
结帖率:0
已结贴  问题点数:20 回复次数:9 
这题怎么解?
#include  <stdio.h>
#include  <stdlib.h>
main()
{ int *a,*b,*c;
a=b=c=(int *)malloc(sizeof(int));
*a=1;*b=2,*c=3;
a=b;
printf("%d,%d,%d\n",*a,*b,*c);
搜索更多相关主题的帖子: include 
2013-03-27 20:46
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:3 
全都是全角代码

算了 不帮你测试了  你自己测试一下ok

DO IT YOURSELF !
2013-03-27 20:52
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
得分:3 
a、b、c应该指向同一空间,数值相等吧


[fly]存在即是合理[/fly]
2013-03-27 20:57
shmilyflf
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:356
专家分:1008
注 册:2012-12-9
得分:3 
a=b=c=(int *)malloc(sizeof(int));a,b,c指向同一块内存空间,所以最后输出的三个数肯定相等。无论前面等于什么,都以最后一个值为准,因为前面的值都会被后面的值覆盖掉。所以最后输出的是3,3,3
2013-03-27 20:58
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
得分:3 
呵呵  楼上的都说了...   飘过

三十年河东,三十年河西,莫欺少年穷!
2013-03-27 21:10
dreffy
Rank: 2
等 级:论坛游民
帖 子:13
专家分:20
注 册:2012-9-20
得分:3 
学习的路过
2013-03-27 21:33
考试卷100
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-13
得分:0 
回复 3楼 azzbcc
是这样的。。就是a,b,c.都分配了同一个储存空间,然后赋值,最后一次赋值就是把c=3的内容放到指定的储存空间去了。。
2013-03-27 21:44
考试卷100
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-13
得分:0 
回复 4楼 shmilyflf
大神啊。。高手
2013-03-27 21:44
考试卷100
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-3-13
得分:0 
回复 2楼 wp231957
好的。。
2013-03-27 21:52
锋了
Rank: 7Rank: 7Rank: 7
来 自:向日葵幼儿园
等 级:黑侠
威 望:2
帖 子:306
专家分:586
注 册:2012-10-27
得分:3 
来冒个泡。。。
2013-03-27 22:02



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-402103-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.272946 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved