作业帮 > 综合 > 作业

c语言中数组定义的问题~

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/03 04:29:14
c语言中数组定义的问题~
#include
void main()
{
int a[100000],b[100000],c[100000];
}
这样定义出错了!
#include
int a[100000],b[100000],c[100000];
void main()
{
}
这样定义对的!
#include
void main()
{
int a[100000],b[100000],c[10000];
}
这样定义对的!
#include
int c[100000];
void main()
{
int a[100000],b[100000];
}
这样是对的!
希望能说出每一种的区别.
负家子弟::你说的那个1036084,好像我没有超过它的大小吧?
zxkdeem::晕.你要在pku上提交,就不区分,什么编译器了.这个和vs,vc编译器差别没有关系.
主函数内定义的数组在堆栈段中分配内存.
全局变量数组在数据段中分配内存.
一般数据段比堆栈段大很多,
所以堆栈段分配不了的内存,数据段可以分配
(1)在堆栈段中分配内存,由于太大无法分配,所以错误.
(2)在数据段中分配内存,数据段可以分配,无错误.
(3)数组比(1)需要的内存少,在堆栈段大小范围内,可以分配,无错误
(4)同(3)