Digg StumbleUpon LinkedIn YouTube Flickr Facebook Twitter RSS Reset

Remplacer un bloc de mémoire dynamiquement avec la fonction ‘realloc()’


{filelink=13959}

/*
#include <stdlib.h>
void *realloc ( void *ptr , size_t n  );
*/
 
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
 
int main(void)
{
  char *p;
 
  p = (char *)malloc(28);
  if(!p)
  {
  /* Quitter le programme en cas d'insuffisance de la mémoire*/
    printf("Erreur d'allocation");
    exit(1);
  }
 
  strcpy(p, "Bienvenu sur mon mesexemples");
 
  /*Réaffecter un nouveau bloc avec le contenu de l'ancien bloc */
  p = (char *)realloc(p, 32);
  if(!p) {
    printf("Erreur d'allocation");
    exit(1);
  }
 
  strcat(p, ".com");
 
  printf(p);
 
  // Libérer les blocs
  free(p);
 
  return 0;
}

No comments yet.

Leave a Comment