当前位置: 代码迷 >> C语言 >> realloc()
  详细解决方案

realloc()

热度:470   发布时间:2008-02-18 22:58:35.0
realloc()
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int n;
    int i;
    int * array;

    array = (int*)malloc(sizeof(int));
    printf("把元素赋值:");
    for(n = 0;
       NULL != (array = (int*)realloc(array, sizeof(int) * (n + 1)))
       && scanf("%d", array + n) == 1;
       n++)
        continue;  // 可换为空语句或,NULL;

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

    free(array);
    system("pause");
    return 0;
}
搜索更多相关的解决方案: array  int  realloc  sizeof  include  

----------------解决方案--------------------------------------------------------
回复
你用MALLOC和REALLOC还不如用MEMSET来分配空间,MALLOC和REALLOC回产生堆
----------------解决方案--------------------------------------------------------
memset()

功 能: 设置s中的所有字节为ch, s数组的大小由n给定
用 法: void *memset(void *s, char ch, unsigned n);
----------------解决方案--------------------------------------------------------