0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 139
|
||||||
1 | ||||||
Ошибка "Нарушение доступа для записи" при выделение памяти для поиска детерминанта квадратной матрицы08.05.2018, 23:54. Показов 648. Ответов 4
Метки нет Все метки)
(
Добрый день!
Делаю простое приложение по поиску детерминанта квадратной матрицы. Чтобы искать детерминант матрицы с размерностью больше 10 - выделяю память массиву, хранящему матрицу. Но после этого возникает ошибка Вот код: Кликните здесь для просмотра всего текста
0
|
|
08.05.2018, 23:54 | |
Ответы с готовыми решениями:
4
Ошибка при вводе массива: "Вызвано исключение: нарушение доступа для записи" Необработанное исключение в "0x00a78659" в "First.exe": 0xC0000005: Нарушение прав доступа при записи "0x0189f000" Необработанное исключение в "0x77df15de" в "kursova.exe": 0xC0000005: Нарушение прав доступа при записи "0xcdcdcdd5" Необработанное исключение в "0x01082855" в "sort.exe": 0xC0000005: Нарушение прав доступа при записи "0xcccccccc" |
1392 / 1021 / 325
Регистрация: 28.07.2012
Сообщений: 2,810
|
|
09.05.2018, 01:52 | 2 |
Пишешь мимо выделенной памяти.
А какое m ты вводишь? П.С.: В строках 25, 63 должно быть sizeof(int) .Строки 59, 73. Либо ты используешь malloc и free, либо new и delete, смешивать их нельзя.
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,793
|
|
09.05.2018, 02:14 | 3 |
При расчете детерминанта в матрице размерностью выше 10, требуется более 2 Гб памяти, что и вызывает ошибку. Проверьте алгоритм рассчета, действительно ли он должен кушать столько памяти.
Добавлено через 16 минут Еще не забывайте очищать память по окончанию функций, а именно в цикле по mas[i] и p[i], а так же сам p.
0
|
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 139
|
|
09.05.2018, 16:55 [ТС] | 4 |
Добавлено через 5 часов 51 минуту
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,793
|
|
09.05.2018, 17:03 | 5 |
lord_commander, если алгоритм верен, то исправлять не надо. Просто не пытайтесь рассчитывать детерминант у больших матриц. Даже если вы сделаете x64 приложение, где нет ограничения в 2 Гб, то максимум оно сможет посчитать детерминант для матриц размером 11-12, так как с увеличением размера матрицы, объем требуемой памяти растет экспоненциально.
0
|
09.05.2018, 17:03 | |
Помогаю со студенческими работами здесь
5
Необработанное исключение в "0x013f2b22" в "123.exe": 0xC0000005: Нарушение прав доступа при записи "0xfdfdfdfd" Необработанное исключение в "0x54a2d2e9 (msvcr100d.dll)" в "3.exe": 0xC0000005: Нарушение прав доступа при записи "0xcccccccc". Ошибка: "нарушение прав доступа при записи по адресу"
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |