Bonjour,
Sur la manpage de realloc, j'ai pu lire ceci:
void *realloc(void *ptr, size_t size);
"If ptr is NULL, then the call is equivalent to malloc(size), for all values of size; if size is equal to zero, and ptr is not NULL, then the call is equivalent to free(ptr). Unless ptr is NULL, it must have been returned by an earlier call to malloc(), calloc(), or realloc(). If the area pointed to was moved, a free(ptr) is done."
Ma question est: que se passe-t-il si l'on diminue la taille allouée dans realloc (p. ex. de 10 int à 5 int), et que l'endroit dans la mémoire ne change pas de place (càd que ptr pointera toujours sur le premier int des 10) ? Est-ce possible? Si oui, cela ne causerait pas une fuite (comme il n'y a pas de free et qu'on diminue la taille de 5 éléments)?
Merci d'avance!