| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 912 人关注过本帖
标题:C语言一个奇怪的问题
只看楼主 加入收藏
lxzlovewtt
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-2-18
收藏
 问题点数:0 回复次数:12 
C语言一个奇怪的问题

请各位高手解释一下为什么会出现这种情况:
main()
{
int a[2][2]={1,2,3,4};
printf("%d",a);
printf("%d",*a);
printf("%d",&a[0][0]);
}/*此段程序三个输出的地址是一样的*/

main()
{
int a[2][2]={1,2,3,4};
printf("%d%d%d",a,*a,&a[0][0]);
}/*第一个和第三个地址一样,第二个不一样,,且是这三个参数位置不管怎么换还是第一个和第三个一样,第二个不一样*/
还有当后面的参数变为两个时,第一个是正确的,第二个和第一个对不上。

请问为什么会这样啊!!!!!!

搜索更多相关主题的帖子: C语言 
2006-09-30 14:24
C语言学习者
Rank: 4
等 级:贵宾
威 望:13
帖 子:1278
专家分:0
注 册:2006-9-26
收藏
得分:0 
我帮你加上回车换行,
main()
{
int a[2][2]={1,2,3,4};
printf("%d\n%d\n%d\n",a,*a,&a[0][0]);
}
一样地址,有什么不一样。

谁有强殖装甲第二部,可以Q我460054868
2006-09-30 14:35
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
两个程序都是一样的,全部都输出a的首地址.

倚天照海花无数,流水高山心自知。
2006-09-30 15:16
lxzlovewtt
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-2-18
收藏
得分:0 

晕死,原来是编译器的问题,,,我本来为了图方便用的是一个MYTC这个集成开发工具,,,换了TC2.0后就对了。。。谢谢大家了!!!!

2006-09-30 17:36
popper
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-8-22
收藏
得分:0 
是一样的
2006-10-01 16:30
popper
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-8-22
收藏
得分:0 

我运行后都是 -58

2006-10-01 16:33
zzc0816
Rank: 1
等 级:新手上路
帖 子:61
专家分:7
注 册:2006-9-14
收藏
得分:0 
我看怎么也是一样啦!

2006-10-01 21:29
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
收藏
得分:0 
*a 应该是 &a 吧 ?
*a 怎么会和 a 一样呢 ?


有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-10-02 11:19
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
int a[][];
a-->&a[0][0];表示二唯数组的首地址.
*a表示第0行的首地址即&a[0][0];

倚天照海花无数,流水高山心自知。
2006-10-02 11:25
shuaiye
Rank: 1
等 级:新手上路
帖 子:445
专家分:0
注 册:2006-5-15
收藏
得分:0 

不知道。


由于工作,N久都没来了!
2006-10-02 11:43
快速回复:C语言一个奇怪的问题
数据加载中...
 
   



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

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