Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2009, 16:09   #1
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию почему может возникать ошибка access violation...: write of address при создании динамического массива

...
...
...
double** a = new double*[n];
for(int i = 0; i < n; i++){
a[i] = new double[4];
for(int j = 0; j < 5; j++){
a[i][j] = 0.0;
}
...
...
...
sleevman вне форума Ответить с цитированием
Старый 03.11.2009, 16:15   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
a[i] = new double[4];
элементы массива это 0,1,2,3
у вас от 0 до 4 вложеный цикл идет
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.11.2009, 16:20   #3
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию

даже вот в таком виде не работает:

...
...
...
double** a = new double*[n]; //возникает ошибка при дебаге
...
...
...
sleevman вне форума Ответить с цитированием
Старый 03.11.2009, 16:25   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вот в таком виде
А что ты таким видом запрограммировать хочешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2009, 16:32   #5
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию

хочу массив использовать далее..
sleevman вне форума Ответить с цитированием
Старый 03.11.2009, 16:40   #6
lennon
Заблокирован
 
Регистрация: 18.11.2007
Сообщений: 254
По умолчанию

а попробуй вот так
double ** a = (double**)calloc(n,sizeof(double*)) ;
а вообще надо быдо добавить тебе адресс после "access violation" так были бы какие то предположения

Последний раз редактировалось lennon; 03.11.2009 в 16:50.
lennon вне форума Ответить с цитированием
Старый 03.11.2009, 16:58   #7
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию

access violation at 0x40e682: write of address 0x6126a7f0
sleevman вне форума Ответить с цитированием
Старый 03.11.2009, 17:06   #8
lennon
Заблокирован
 
Регистрация: 18.11.2007
Сообщений: 254
По умолчанию

что у тебя содержит перменная n? может быть она имеет отрицательное значение? проверь в дебагере
lennon вне форума Ответить с цитированием
Старый 03.11.2009, 17:10   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
хочу массив использовать далее..
А зачем тебе указатель на указатель?
Просто обьяви динмассив без всяких * )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2009, 17:13   #10
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию

нет...даже если написать любое целое число,все равно выдает.
вообще непонятно.выше в коде я тоже использовал несколько динамических массивов,но я же их сейчас не трогаю,а пытаюсь создать новый ДВУМЕРНЫЙ,чтоб туда числа загнать(в таблицу) - самое простое..бред

Последний раз редактировалось sleevman; 03.11.2009 в 17:20.
sleevman вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
простой код...почему выдает ошибку access violation at address!?? sleevman Помощь студентам 2 28.10.2009 20:47
Access violation at address при использовании DLL spamer Общие вопросы Delphi 4 27.08.2009 22:19
Access violation at address при выполнении end elsin Общие вопросы Delphi 5 30.01.2009 10:29
access violation при создании обьекта goog Общие вопросы Delphi 12 11.01.2009 20:33
Ошибка: "Access violation at address 00454F01 in module 'Project1.exe'. Read of address 00000000. Fen1x Общие вопросы Delphi 8 13.10.2007 20:13