鱼C论坛

 找回密码
 立即注册
查看: 4238|回复: 8

关于数组的一个疑问?

[复制链接]
发表于 2013-4-13 09:08:46 | 显示全部楼层 |阅读模式
2鱼币
本帖最后由 deeP灵魂遐想你 于 2013-4-13 11:00 编辑

#include <stdio.h> void main()
{
    int a[2][3]={{1,2,3},{4,5,6}};
        ....
      .............

}
上边这个数组在初始化的时候   调试执行过这一步后 会有一个值 ,请问这个 值 代表什么意思?

图1

图1



最佳答案

查看完整内容

int a[2][3]={{1,2,3},{4,5,6}}; 调试取值a[2][3]即取该数组2行,3列的数值,这个数值在数组初始化之外,所以编译器取到的值是内存里的一个随机的数据,这个随机的数值在不同时间取的值不一样。 请记住数组数值,行列都是从0开始的,{1,2,3}在数组第0行,其中1在第0列,要读取这个值就要输入a[0][0],如果你想读取6这个值,就要输入a[1][2],而不是a[2][3]我们再来调试所有的value看看: 所有超出数组初始化范围的值都会被随机 ...
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-4-13 09:08:47 | 显示全部楼层
本帖最后由 遒羽 于 2013-4-13 11:58 编辑

int a[2][3]={{1,2,3},{4,5,6}};
调试取值a[2][3]即取该数组2行,3列的数值,这个数值在数组初始化之外,所以编译器取到的值是内存里的一个随机的数据,这个随机的数值在不同时间取的值不一样。
请记住数组数值,行列都是从0开始的,{1,2,3}在数组第0行,其中1在第0列,要读取这个值就要输入a[0][0],如果你想读取6这个值,就要输入a[1][2],而不是a[2][3]我们再来调试所有的value看看:
QQ截图20130413101619.gif
所有超出数组初始化范围的值都会被随机得到一个数值。
注意下:
我们观察到
a[0][3]==a[1][0],a[0][4]==a[1][1],a[0][5]=a[1][2],还有其他随即的数值也有相等,这是怎么一回事??
我们重新看下初始化的数组,逻辑排列是这样的:
1,2,3
4,5,6
但是它的实际物理内存排列是这样的:
内存地址      value
0x0000        1
0x0004        2
0x0008        3
0x000c        4
0x000f         5
0x0014        6
这样一来就明白了,原来a[0][3]和a[1][0]是共用一个地址的,即它们对应的 值是一样的。

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-13 09:35:00 | 显示全部楼层
int a[2][3]写错了, 应该是 int a[2][3]={{1,2},{3,4},{5,6}};
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-13 11:28:58 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-13 12:12:53 | 显示全部楼层
楼上说的对的,这个值是个随机值,无意义
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-13 16:10:03 | 显示全部楼层
是a数组的地址吧
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-13 23:14:28 | 显示全部楼层
数组越界了  第二行第三列  应该是 a[1][2] = 6
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-4-14 09:27:34 | 显示全部楼层
系统内存里面的值 待分配内存里面原来的值
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-4-14 09:45:29 | 显示全部楼层
遒羽 发表于 2013-4-13 09:08
int a[2][3]={{1,2,3},{4,5,6}};
调试取值a[2][3]即取该数组2行,3列的数值,这个数值在数组初始化之外,所 ...

thank you !明白了...
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-3 15:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表