| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 703 人关注过本帖
标题:多维数组元素的地址问题,行首地址·····
只看楼主 加入收藏
cheenbee
Rank: 2
等 级:论坛游民
帖 子:53
专家分:32
注 册:2011-11-3
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:5 
多维数组元素的地址问题,行首地址·····
#include<stdio.h>
int main(){
    int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
    printf("%d   %d\n",a,*a);
    printf("%d   %d\n",a[0],*(a+0));
    printf("%d   %d\n",&a[0],&a[0][0]);
    printf("%d   %d\n",a[0]+1,(a[0]+1));
   
    return 0;
}
疑问:*a的值是什么意义,代表什么?为什么它的值和a相同?是不是输出a[0]首行地址即&a[0][0]?

搜索更多相关主题的帖子: return 元素 
2011-11-14 20:59
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:3 
a,a[0],&a[0][0]代表的地址是一样的,但其含义是不同的.

★★★★★为人民服务★★★★★
2011-11-14 21:02
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:0 
看看这一句的结果就知道了printf("%p-%u,%p-%u,%p-%u",a,sizeof(a),a[0],sizeof(a[0]),&a[0][0],sizeof(&a[0][0]));

★★★★★为人民服务★★★★★
2011-11-14 21:07
cheenbee
Rank: 2
等 级:论坛游民
帖 子:53
专家分:32
注 册:2011-11-3
收藏
得分:0 
回复 3楼 cnfarer
a,a[0]不都是地址吗,是不是指针,指针在visual C++中占四个字节,可是为什么它们所占字节不同,求解它们代表的意义!
我想了一下,a包括了整个数组的长度,a[0]是第一行的长度,可还是不懂为什么?
2011-11-15 14:14
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:0 
a是数组首地址,a[0]是首行的首地址,&a[0][0]是首个元素的首地址,它们都是从同一个地方开始的.

★★★★★为人民服务★★★★★
2011-11-15 19:15
飞扬冲天
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:122
注 册:2011-10-21
收藏
得分:3 
嗯,就像5楼说的那样
2011-11-16 12:39
快速回复:多维数组元素的地址问题,行首地址·····
数据加载中...
 
   



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

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