#include <iostream>

int* copy_array(const int* arr, std::size_t size)  // const because we don't intend to modify the contents of arr
{
    int* copy = new int[size];
    for (std::size_t i=0; i<size; ++i)
        copy[i] = arr[i];

    return copy;
}

void print(const int* arr, std::size_t size)
{
    for (std::size_t i=0; i<size; ++i)
        std::cout << arr[i] << ' ' ;
    std::cout << '\n' ;
}

int main()
{
    const std::size_t size = 8 ;
    int array1[size] = { 5, 12, -2, 8, 47, 12, 81, 0 };

    int * array1_copy = copy_array(array1, size) ;

    print(array1, size);
    print(array1_copy, size);

    delete [] array1_copy;
}