malloc int array c

#include <stdio.h>
#include <stdlib.h>

int main() {
    int size = 5;
    int arr = (int )malloc(size * sizeof(int));

    if (arr == NULL) {
        printf("Memory allocation failed");
        return 1;
    }

    for (int i = 0; i < size; i++) {
        arr[i] = i * 2;
    }

    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }

    free(arr);

    return 0;
}