Skip to content

Commit

Permalink
Free memory in dynamic allocation
Browse files Browse the repository at this point in the history
  • Loading branch information
RaktiSingal authored May 7, 2021
1 parent 1ee1a21 commit cdebae8
Showing 1 changed file with 46 additions and 0 deletions.
46 changes: 46 additions & 0 deletions 74-free.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
#include <stdio.h>
#include <stdlib.h>

int main()
{

// This pointer will hold the
// base address of the block created
int *ptr, *ptr1;
int n, i;

// Get the number of elements for the array
n = 5;
printf("Enter number of elements: %d\n", n);

// Dynamically allocate memory using malloc()
ptr = (int*)malloc(n * sizeof(int));

// Dynamically allocate memory using calloc()
ptr1 = (int*)calloc(n, sizeof(int));

// Check if the memory has been successfully
// allocated by malloc or not
if (ptr == NULL || ptr1 == NULL) {
printf("Memory not allocated.\n");
exit(0);
}
else {

// Memory has been successfully allocated
printf("Memory successfully allocated using malloc.\n");

// Free the memory
free(ptr);
printf("Malloc Memory successfully freed.\n");

// Memory has been successfully allocated
printf("\nMemory successfully allocated using calloc.\n");

// Free the memory
free(ptr1);
printf("Calloc Memory successfully freed.\n");
}

return 0;
}

0 comments on commit cdebae8

Please sign in to comment.