网站首页轮播图怎么换,开发一个网站平台多少钱,wordpress 页面标签页,乐山市建设银行网站#x1f4af; 博客内容#xff1a;关于刷题时使用数组的小技巧 #x1f600; 作 者#xff1a;陈大大陈 #x1f680; 个人简介#xff1a;一个正在努力学技术的准前端#xff0c;专注基础和实战分享 #xff0c;欢迎私信#xff01; #x1f496; 欢迎大家#… 博客内容关于刷题时使用数组的小技巧 作 者陈大大陈 个人简介一个正在努力学技术的准前端专注基础和实战分享 欢迎私信 欢迎大家这里是CSDN我总结知识和写笔记的地方喜欢的话请三连有问题请私信 最近写题时发现了一直遗漏的一个知识点。 如图将数组定义在全局就会输出正确答案。 但是要是定义局部数组就会打印出随机值。
报错显示栈溢出。 这是因为局部数组和全局数组的存储位置不一样。
全局数组是存储在内存中的静态区而局部变量是存储在栈区。
对于c语言一个静态数组能有多大取决于剩余内存的空间也就是它所在区的大小
在Windows下栈的大小为2M也就是1024*1024*2 2097152个字节。而一个int类型的变量则占2个或4个字节。所有我们在程序中声明局部变量时在栈区最好不好超过int[200000]的内存变量。
总之当程序需要声明一个超过十万级的变量时最好放在main函数外面作为全局变量去使用。不然的话可能像我上面那样发生栈溢出问题还以为是代码的思路有问题。