realloc函数用法

来源:互联网 发布:淘宝怎样取消货到付款 编辑:程序博客网 时间:2024/06/05 00:51

函数原型:

void *realloc(void *ptr, size_t size);

功能:
重新分配大小为size的一块内存,返回内存地址ptr。

函数源码流程图:

这里写图片描述

使用方法:

/* realloc example: rememb-o-matic */#include <stdio.h>      /* printf, scanf, puts */#include <stdlib.h>     /* realloc, free, exit, NULL */int main (){  int input,n;  int count = 0;  int* numbers = NULL;  int* more_numbers = NULL;  do {     printf ("Enter an integer value (0 to end): ");     scanf ("%d", &input);     count++;     more_numbers = (int*) realloc (numbers, count * sizeof(int));     if (more_numbers!=NULL) {       numbers=more_numbers;       numbers[count-1]=input;     }     else {       free (numbers);       puts ("Error (re)allocating memory");       exit (1);     }  } while (input!=0);  printf ("Numbers entered: ");  for (n=0;n<count;n++) printf ("%d ",numbers[n]);  free (numbers);  return 0;}

参考:
http://www.cnblogs.com/ladd/archive/2012/06/30/2571420.html
http://www.cplusplus.com/reference/cstdlib/realloc/

原创粉丝点击