当前位置: 代码迷 >> C语言 >> [求助]数组大小问题
  详细解决方案

[求助]数组大小问题

热度:137   发布时间:2006-10-21 21:36:14.0
[求助]数组大小问题
为什么一维数组的大小不能超过65535 二维数组的两个下标之积也不能超过这个数?

[此贴子已经被作者于2006-10-21 22:22:08编辑过]

搜索更多相关的解决方案: 65535  

----------------解决方案--------------------------------------------------------
谁知道,解释一下
----------------解决方案--------------------------------------------------------
谁说的...........

----------------解决方案--------------------------------------------------------
你试试看
----------------解决方案--------------------------------------------------------
我刚才试了,没有你说的那个限制啊!
#include "stdio.h"
main()
{
static int a[6553569]={0};
a[6553565]=1;
printf("%d",a[6553565]);
}
输出就是1。
在VC6下运行的。
----------------解决方案--------------------------------------------------------
应该没有什么限制的,只是说定义数组不要太大,因为数组的各个元素要连续在内存空间中,加入太大,则可能在执行中出现散碎现象,也可能找不到连续的存储空间,从而导致运算错误,甚至死机,所以数组最好不要定义太大。
----------------解决方案--------------------------------------------------------
在TC和WINTC下就不行啊
----------------解决方案--------------------------------------------------------
可以看一下图片
----------------解决方案--------------------------------------------------------
我刚才在tc下运行了一下,说是array too large。这个说不清了,最好还是不用这么大的数组,可以用指针代替,用多少就占多少,也不必占用连续的内存空间了。
----------------解决方案--------------------------------------------------------
大数组最好定义成全局变量......
----------------解决方案--------------------------------------------------------
  相关解决方案