Latest web development tutorials

fonctions de la bibliothèque C - realloc ()

C bibliothèque standard - <stdlib.h> C bibliothèque standard - <stdlib.h>

description

fonctions de la bibliothèque Cvoid * realloc (void * ptr, size_t size) taille du bloc de mémoire pour essayer avant d' appeler mallocoucallocRéajusterptrattribués des points.

déclaration

Voici () fonction instruction realloc.

void *realloc(void *ptr, size_t size)

Paramètres

  • ptr - un pointeur de ré-allouer un bloc de mémoire de la mémoire avant le bloc de mémoire est allouée la mémoire en appelant malloc, calloc ou realloc de.Si un pointeur NULL est attribué un nouveau bloc de mémoire, et la fonction renvoie un pointeur vers elle.
  • Taille - La nouvelle taille du bloc de mémoire, en octets.Si la taille est de 0 et ptr pointe vers un bloc de mémoire existant, le bloc de mémoire pointé par ptr il est libéré et retourne un pointeur NULL.

Valeur de retour

Cette fonction renvoie un pointeur sur la taille mémoire de réaffectation. Si la requête échoue, elle renvoie NULL.

Exemples

L'exemple suivant illustre la fonction realloc () est utilisée.

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

int main()
{
   char *str;

   /* 最初的内存分配 */
   str = (char *) malloc(15);
   strcpy(str, "w3cschool");
   printf("String = %s,  Address = %u\n", str, str);

   /* 重新分配内存 */
   str = (char *) realloc(str, 25);
   strcat(str, ".cc");
   printf("String = %s,  Address = %u\n", str, str);

   free(str);
   
   return(0);
}

Nous allons compiler et exécuter le programme ci-dessus, qui se traduira par ce qui suit:

String = w3cschool, Address = 355090448
String = w3cschool.cc, Address = 355090448

C bibliothèque standard - <stdlib.h> C bibliothèque standard - <stdlib.h>