| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 222 人关注过本帖
标题:问一个有关指针二维数组的问题,求教~
只看楼主 加入收藏
落雨的季节
Rank: 1
等 级:新手上路
帖 子:10
专家分:2
注 册:2012-12-12
结帖率:75%
收藏
已结贴  问题点数:10 回复次数:3 
问一个有关指针二维数组的问题,求教~
#include<stdio.h>
void main()
{int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
printf("%d",a[1]);//输出1245024;
}
像这种二维数组书上说用a[1]表示&a[1][0];
可是如果我输出的是:
#include<stdio.h>
void main()
{int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
printf("%d",a+1);//输出1245024;
}
为什么输出也是这个值呢?表示的也是a[1][0]的地址吗?
可是这不是一维数组的地址表示才能直接用数组名来表示吗?二维数组用它又表示什么含义呢?
(各种不懂,好晕呀~求帮忙~)
2012-12-18 10:58
jk_love
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:196
专家分:965
注 册:2012-10-22
收藏
得分:6 
相信楼主对a[1]表示为&a【1】【0】应该没有问题,关键是理第2个。
2维数组可以拆分为3个一维数组a[0],a[1],a[2],所以a+1,对应的就是和&a[1][0]一样的地址了。
2012-12-18 11:08
a462410594
Rank: 2
等 级:论坛游民
帖 子:75
专家分:64
注 册:2011-11-17
收藏
得分:2 
a[0],a[1],a[2]不能当作下标变量使用,它们是数组名,不是一个单纯的下标变量。
2012-12-18 11:15
h1023417614
Rank: 4
等 级:禁止访问
帖 子:211
专家分:237
注 册:2012-11-30
收藏
得分:2 
n维数组可以当做每个元素是n-1维数组的一维数组
2012-12-18 12:23
快速回复:问一个有关指针二维数组的问题,求教~
数据加载中...
 
   



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

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