How to use dynamic memory allocation to define int array in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h>
#include <time.h> 

int main(void)
{
    int *p, i, size;
    
    printf("Enter array size: ");
    scanf("%d", &size);
    
    p = malloc(size * sizeof(int));
    if (p == NULL) 
    {
        printf("Error allocating memory\n"); 
        return 1;
    }
    
    srand(time(NULL)); 
     
    for (i = 0; i < size; i++)
    {
         p[i] = rand() % 100 + 1;
         printf("arr[%d] = %d\n", i, p[i]);
    }
    
    free(p);
 
    return 0;
}
/*
run:
Enter array size: 10
arr[0] = 37
arr[1] = 20
arr[2] = 30
arr[3] = 75
arr[4] = 77
arr[5] = 98
arr[6] = 76
arr[7] = 29
arr[8] = 99
arr[9] = 20
*/





answered Sep 12, 2014 by avibootz

Related questions

...