码迷,mamicode.com
首页 > 其他好文 > 详细

一段简单的代码告诉你什么叫内存溢出

时间:2014-08-05 09:38:58      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:内存溢出

#include <stdio.h>


int FooArray[4] = {1, 1, 1, 1};
int VeryImportantValue = 7;


void main()
{

    printf("%d\n", VeryImportantValue);

    for (int i = 0; i <= 4; i++) {
        FooArray[i] = 4;
    }

    printf("%d\n", VeryImportantValue);
}


这是个很简单的内存溢出,但是会造成严重的后果。曾经在真实项目中有类似的情况发生,经过万般调试,崩溃的地方十分诡异,最后发现,原来发生了内存溢出,定义的 8 个元素的数组去存储注册表中的某项下面的键值,但在某台机器上,由于不同设备的热插拔,导致下面的键值超过了 8 个,从而导致了内存的溢出造成崩溃。崩溃还算是个良好的结果,如果造成其它未崩溃但不能补救的结果,影响可想而知。其简单模型就是上面的代码。

一段简单的代码告诉你什么叫内存溢出,布布扣,bubuko.com

一段简单的代码告诉你什么叫内存溢出

标签:内存溢出

原文地址:http://blog.csdn.net/henzox/article/details/38379277

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!