#47_Dynamic Memory Allocation in C

 #include <stdio.h>

#include <stdlib.h>
//Dynamic Memory Allocation

void malloc1(int *memint n//Accesing and using allocated memory
{
    for (int i = 0i < ni++)
    {
        printf("Enter the value of array at index %d:"i); //storing data in allocated memory
        scanf("%d", &mem[i]);
    }
    for (int i = 0i < ni++)
    {
        printf("The value of array at index %d is:%d\n"imem[i]); //accesing and printing data from allocated memory
    }
}

void calloc1(int *memint n//accesing and using contiguous memory
{
    for (int i = 0i < ni++)
    {
        printf("Enter the value of array at index %d:"i); //storing data in contiguous allocated memory
        scanf("%d", &mem[i]);
    }
    for (int i = 0i < ni++)
    {
        printf("The value of array at index %d is:%d\n"imem[i]); //Accesing and printing data from contiguous allocated memory
    }
}
void realloc1(int *memint n//Accessing and using reallocated memory
{
    for (int i = 0i < ni++)
    {
        printf("Enter the value of array at index %d:"i); //storing data in reallocated memory
        scanf("%d", &mem[i]);
    }
    for (int i = 0i < ni++)
    {
        printf("The value of array at index %d is:%d\n"imem[i]); //printing data from reallocated memory
    }
}

int main()
{
    //Using malloc function
    int n;
    int *mem//declaring pointer to point storage of dynamic allocated memory
    printf("Enter the size of array: ");
    scanf("%d", &n);
    mem = (int *)malloc(n * sizeof(int)); //taking storage using malloc() function and casting it from void to int* and pointing it to "mem"
    malloc1(memn);                      //calling function and passing memory via pointer to function i.e,"malloc1"

    //Using calloc function
    printf("Enter the size of array: ");
    scanf("%d", &n);
    mem = (int *)calloc(nsizeof(int));
    calloc1(memn);

    //Using realloc function
    mem = (int *)realloc(mem, (n + 3) * sizeof(int)); //reallocating memory by increasing 3 blocks of int
    realloc1(memn + 3);

    return 0;
}

Comments

Popular posts from this blog