Почему я получаю "terminate вызывается после бросания экземпляра 'std :: bad_alloc' what (): std :: bad_alloc при попытке создать динамическую матрицу? - PullRequest
0 голосов
/ 24 апреля 2019

Ну, проблема в том, что моя программа резко падает при попытке создать динамическую матрицу 131072 * (131072 * 2), если я пытаюсь 16384 * (16384 * 2 + 2), она все еще работает нормально. Поэтому мне нужен способ создать матрицу без сбоев программы.

     int ROW=b_len;                      //131072 
  int COL=a_len+b_len+OVERFLOW;      //131072*2+2

    int** mat = new int*[ROW];
    printf("\n\nHURRA");  //It prints this
    for (int i = 0; i < ROW; ++i)  //I think it crashes here
mat[i] = new int[COL];
  printf("\n\nolv");    //But not this
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...