Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165

Ошибка при создании динамического массива

17.06.2019, 11:03. Показов 1221. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При создании динамического массива (матрицы) возникает ошибка

Сам процесс создания выведен в процедуру.

C++
1
2
3
4
5
6
7
8
9
10
11
12
double** CreateMatrix(int M, int N)
{
 
    double** c = new double*[M];   
    for (int i = 0; i < M; i++)
    {
        c[i] = new double[N];
    }
    return(c);
}
 
double** A = CreateMatrix(10000,10000);
Причем он создает два массива, а третий не создает
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.06.2019, 11:03
Ответы с готовыми решениями:

Ошибка при создании динамического массива.
Все доброго времени. Начал создавать одномерный массив, потом решил его преобразовать в динамический одномерный. Понимаю что...

Ошибка при создании динамического двумерного массива
Ткните пальцем, что не так. Только учусь, делаю лабы, камнями не забрасывайте. Смотрел шаблоны здесь и в других местах, но есть вопрос. ...

Ошибка при создании 2-го элемента динамического списка
НЕ могу понять откуда как исправить данную ошибка . Выскакивает как мне кажется при попытке динамически выделить память для указателя на...

13
 Аватар для 7533620
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 242
17.06.2019, 11:11
памяти не хватает
0
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165
17.06.2019, 11:18  [ТС]
elseecay, вот такую штуку пишет.
А это можно как-нибудь исправить?
Миниатюры
Ошибка при создании динамического массива  
0
 Аватар для Loafer
19 / 11 / 7
Регистрация: 03.11.2016
Сообщений: 34
Записей в блоге: 36
17.06.2019, 11:42
У вас бросается исключение std::bad_alloc. Исключение бросается оператором new из-за нехватки памяти. Никогда на практике с таким не сталкивался. Вам надо погуглить, в чем могут быть причины. Возможно, вы выделяете слишком большие куски памяти.
1
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
17.06.2019, 11:45
Цитата Сообщение от crazymadman18 Посмотреть сообщение
elseecay, вот такую штуку пишет.
А это можно как-нибудь исправить?
Скомпилируй в x64 (Сверху, под меню, рядом с Debug)
1
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165
17.06.2019, 22:04  [ТС]
Проблема решается заменой double на float. Но это такое себе решение.
0
24 / 21 / 3
Регистрация: 04.11.2014
Сообщений: 283
17.06.2019, 22:57
crazymadman18, Создать очень большой двумерный массив
тут вот есть похожая тема
0
 Аватар для Loafer
19 / 11 / 7
Регистрация: 03.11.2016
Сообщений: 34
Записей в блоге: 36
17.06.2019, 23:23
Потому, что
C++
1
sizeof(float) < sizeof(double)
.
0
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165
18.06.2019, 22:30  [ТС]
Loafer, ну это само собой, просто необходимо было запустить с таким количеством точек невзирая на точность, но что если понадобится в double посчитать? Так что проблема не решена
0
 Аватар для 7533620
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 242
18.06.2019, 22:46
оперативки вставь больше хД
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
19.06.2019, 08:41
crazymadman18, тот код который вы привели в теме и тот, что на скриншоте - это два абсолютно разные урывки кода, если хотите что бы вам помогли кидайте ваш код и с какими параметритами, а не то, что как вам кажется у вас происходит. Ато будете память покупать ходить
0
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165
19.06.2019, 17:56  [ТС]
Azazel-San, ну у меня там тайпдефы были
C++
1
2
3
tMatrix = tVector*
tVector = tType*
tType = double
Я их убрал просто, чтобы не писать вам тут лишнего
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
19.06.2019, 18:38
Цитата Сообщение от crazymadman18 Посмотреть сообщение
ну у меня там тайпдефы были
Мда, божественные имена вы им дали..

Ну, так и с какими параметрами вы вызваете свой метод CreateMatrix?
Собираете под х86?
Сколько памяти есть на ПК?
0
0 / 0 / 2
Регистрация: 04.12.2016
Сообщений: 165
22.06.2019, 00:30  [ТС]
Azazel-San, имена просто отличные. Не знаю что значит
Цитата Сообщение от Azazel-San Посмотреть сообщение
Собираете под х86?
(имею право, тема c++ для начинающих). Памяти было на том компе 12 ГБ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.06.2019, 00:30
Помогаю со студенческими работами здесь

Почему при создании динамического массива через new ячейки массива имеют значение -842150451?
Я хотел бы узнать почему при создании динамического массива через операцию new ячейки массива имеют значение -842150451. #include...

Передача параметров в конструктор при создании динамического массива
Добрый день! Есть довольно тривиальный класс: class Array1d{ int* ptr_; public: Array1d(int n): ptr_(new...

String subscript out of range при создании динамического массива
Всем привет. Пишу игру на c++. Смысл состоит в том чтобы отстреливать группы врагов, которые появляются сразу после уничтожения предыдущей...

Выводит ошибку при создании динамического массива стрктур
#include &quot;pch.h&quot; #include &lt;iostream&gt; using namespace std; struct psh { string abc; double l; }; int main(){ ...

Ругается new при создании динамического массива через перегруженный конструктор
Перегрузил конструктор: class Library { public: Library(void) //конструктор библиотеки без заданного типа { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru