When I run this code:
#include <iostream>
using namespace std;
void makeArrayBigger(int*, int&, int);
void arrayIni(int*, int, int);
void displayArray(int*, int);
int main(){
    int size = 5;
    int *arr = new int[5];
    arrayIni(arr, size, 0);
    //displayArray(arr, size);
    makeArrayBigger(arr, size, 8);
    //displayArray(arr, size);
    arrayIni(arr, size, 1);
    system("pause");
    return 0;
}
void makeArrayBigger(int *arr, int &size, int newSize){
    int *newArr = new int[newSize];
    for (int counter = 0; counter < size; counter++){
        newArr[counter] = arr[counter];
    }
    delete[] arr;
    arr = new int[newSize];
    for (int index = 0; index < size; index++){
        arr[index] = newArr[index];
    }
    delete[] newArr;
    size = newSize;
}
void arrayIni(int *arr, int size, int ini){
    for (int index = 0; index < size; index++){
        arr[index] = ini;
    }
}
void displayArray(int *arr, int size){
    if(arr == NULL)
        return;
    for (int counter = 0; counter < size; counter++){
        cout << arr[counter] << endl;
    }
    cout << endl;
}
I get this breakpoint error:
Windows has triggered a breakpoint in pointer.exe.
This may be due to a corruption of the heap, which indicates a bug in pointer.exe or any of the DLLs it has loaded.
This may also be due to the user pressing F12 while pointer.exe has focus.
 
     
     
    