realloc: reallocate memory
//Declaration: void *realloc(void *ptr, size_t size);
//Parameter: If ptr is null, realloc() allocates size bytes of memory and returns a pointer.
If size is zero, the memory pointed to by ptr is freed.
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main(void)
{
char *p;
p = malloc(17);
if(!p) {
printf("Allocation Error\n");
exit(1);
}
strcpy(p, "This is 16 chars");
p = realloc(p, 18);
if(!p) {
printf("Allocation Error\n");
exit(1);
}
strcat(p, ".");
printf(p);
free(p);
return 0;
}
/*This is 16 chars.*/
Related examples in the same category