Mega Code Archive

 
Categories / C / Code Snippets
 

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, "Its is 15 chars"); p = realloc(p, 18); if(!p) { printf("Allocation Error\n"); exit(1); } strcat(p, "."); printf(p); free(p); return 0; } /*This is 15 chars.*/