削除コマンドが来るとクラッシュします。配列へのポインターを持つ構造体を作成し、乱数で埋めてから、メモリの割り当てを解除することになっています。for ループまたはブール値チェックなしでクラッシュする delete コマンドまで正常に動作します。
int main() {
    cout << "start" << endl;
    //Creating Struct
    struct 
    {
        int* ptrarray[10];
        bool boolarray[10];
    } data;
    //Initializing Random Generator
    srand ( time(NULL) );
    cout << "Initializing: ";
    //Allocating Memory and generating random numbers with for loops
    for (int i = 0; i < 10; i++)
    {   
        int counter = 0; //Counts numbers set   
        cout <<  i << " "; //Counting arrays initialized    
        data.ptrarray[i] = new int [12582912]; // Memory Allocation 
        for (int j = 0; j < 12582912; j++)//Number Generating
        {
            *data.ptrarray[i] = rand() % 899 + 100;
            data.ptrarray[i]++;
            counter++;
        }
        //Checking for failed initializations and declaring if success
        if (counter == 12582912)
        {
            data.boolarray[i] = true;
        }
        else
        {
            data.boolarray[i] = false;
        }
    }
    cout << endl;
    //This is where it always crashes.
    for (int i=0; i<10; i++)
    {
        if (data.boolarray[i] == true)
            delete[] data.ptrarray[i];
    }
    cout << endl;
    return 0;
}
MS Visual studio 2010 を使用しています。