2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|||||||||||
1 | |||||||||||
Ошибка с удалением памяти от динамического двумерного массива15.12.2017, 17:37. Показов 3724. Ответов 12
Метки нет (Все метки)
Вечер в хату, форумчане, помогите пжлст, не могу понять как исправить ошибку.
Задание:Разработайте библиотеку функций для работы с прямоугольными матрицами целочисленных значений размерности nxm (n,m<=10). Реализацию функций разместите в файлах исходного кода Matrix.cpp, интерфейс функций - в Matrix.h. В состав библиотеки включите следующие функции: 1. ввод элементов прямоугольной целочисленной матрицы размерности NxM с клавиатуры: void InputTwoArray(int a[n][m], int N, int M); 2. вывод элементов прямоугольной целочисленной матрицы размерности NxM на консоль: void PrintMatrix(int a[n][m], int N, int M); 3. сортировка элементов k-ой строки матрицы по возрастанию (любым известным вам алгоритмом) void SortLine(int a[n][m], int N, int M, int k); 4.нахождение позиции максимального элемента матрицы и его значения (функция возвращает значение максимального элемента матрицы, а его позицию сохраняет в переменных maxi и maxj) int MaxMatrix(int a[n][m], int N, int M, int& maxi, int& maxj); Matrix.cpp
0
|
15.12.2017, 17:37 | |
Ответы с готовыми решениями:
12
Ошибка при удалением двумерного динамического массива Удаление двумерного динамического массива из памяти Вылетает функция очистки памяти двумерного динамического массива Выделение памяти для динамического двумерного массива внутри функции |
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|||||||||||
15.12.2017, 17:46 | 2 | ||||||||||
Мир тебе, залетный! Ты бы хотя бы поведал, как ошибка проявляет себя.
Добавлено через 1 минуту
Ты и так используешь оператор для удаления массива
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|
15.12.2017, 17:47 [ТС] | 3 |
Matrix.exe вызвал срабатывание точки останова. Вызвано исключение вот здесь
При квадратной матрице всё работает на ура, а при неквадртаной эта ошибка
Добавлено через 42 секунды Я удаляю вначале элементы, а потом сам массив, разве нет? + он ещё двумерный
0
|
299 / 208 / 174
Регистрация: 11.05.2016
Сообщений: 655
|
|
15.12.2017, 17:48 | 4 |
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
||||||
15.12.2017, 17:52 [ТС] | 5 | |||||
удалил из функции и добавил в main и получилось вот так
0
|
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|
15.12.2017, 17:53 | 6 |
Ты выделяешь массив указателей. И все....
Чтобы удалять так, как ты ег оудаляешь, ты еще должен для каждого элемента этого массива выделить еще память.
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|
15.12.2017, 17:55 [ТС] | 7 |
0
|
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
||||||||||||||||
15.12.2017, 17:57 | 8 | |||||||||||||||
Добавлено через 1 минуту Хотя я бы сделал сразу
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|
15.12.2017, 18:01 [ТС] | 9 |
всё так же как и в коде, но не работает с не квадратной матрицей.
функции жалуются, что нужен указатель на указатель
0
|
299 / 208 / 174
Регистрация: 11.05.2016
Сообщений: 655
|
|
15.12.2017, 18:07 | 10 |
Surv, короче, я поковырялся. Вывод: вы напутали m и n в объявлениях\вызовах функций.
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|
15.12.2017, 18:08 [ТС] | 11 |
0
|
299 / 208 / 174
Регистрация: 11.05.2016
Сообщений: 655
|
|
15.12.2017, 18:13 | 12 |
0
|
2 / 2 / 1
Регистрация: 08.10.2017
Сообщений: 64
|
|
15.12.2017, 18:18 [ТС] | 13 |
0
|
15.12.2017, 18:18 | |
15.12.2017, 18:18 | |
Помогаю со студенческими работами здесь
13
Пример динамического двумерного массива по стандарту C++, располагающегося в монолитном участке памяти Ошибка заполнения динамического двумерного массива Ошибка описания динамического двумерного массива Ошибка при создании динамического двумерного массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |