首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

动态分配内存储器在用free回收时内存泄漏

2013-07-16 
动态分配内存在用free回收时内存泄漏#includestdio.h#includestdlib.hint main(){int number 0prin

动态分配内存在用free回收时内存泄漏

#include<stdio.h>
#include<stdlib.h>

int main()
{
    int number = 0;

    printf("please enter the number of the array:");
    scanf("%d",&number);

    int * array = (int *)malloc(number);

    for(int i = 0; i <number; i ++)
    {
        printf("please enter the %dth element:",i + 1);
        scanf("%d",&array[i]);
    }

    for(i = 0; i <number ; i ++)
    {
        printf("%d\n",array[i]);
    }

free(array);//内存泄漏

   return 0;
}


在调用free(array);时为什么会内存泄漏。
[解决办法]
是不是应该这样申请
int * array = (int *)malloc(number*sizeof(int));

热点排行