void *realloc(void *Adresse, int Taille);
Le résultat est la zone allouée. Le contenu de la zone mémoire Adresse est recopié dans la zone allouée.
#include <stdio.h>
#include <malloc.h>
char *Chaine;
Chaine=(char *)malloc(100*sizeof(char));
if (!Chaine)
{
...
}
...
Chaine=(char *)realloc(Chaine, 200*sizeof(char));
if (!Chaine)
{
...
}
...
free(Chaine);
Surtout ne pas écrire ou lire au-delà de la zone mémoire parce que celle-ci serait trop courte.
Surtout ne pas supposer que la zone mémoire est initialisée à une suite d'octets nul.
Sur Os 400, cette API fait partie de stdlib.h et non de malloc.h.