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

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

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

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

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

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

#include <stdlib>
#include <string>
#include <iostream>
using namespace std;

int main(){
int n = 3;
double* p;
for(int i = 1; i < n; i++){
p = new double[i];
p[i] = i;
cout << p[i] << endl;
delete []p;
}
cin >> n;
}
sleevman вне форума Ответить с цитированием
Старый 28.10.2009, 19:22   #2
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

А что должен делать Ваш код? На данный момент он создаёт n массивов вещественных чисел и каждый раз пытается записать значение i за пределы массива.
Наверное так надо?
Код:
...
int main()
{
    int n = 3;
    double* p = new double[n]; // создали массив
    for(int i = 0; i < n; i++) {    // Заполняем его
        p[i] = (i+1);
        cout << p[i] << endl;
    }
    delete[] p;                        // Освобождаем память
    cin >> n;
}
В Вашем коде на каждой итерации создаётся массив размерностью i с последним элементов по индексу i-1, а Вы пытаетесь писать в i-ю ячейку, которая находится за пределами массива, что и послужило причиной AV

Последний раз редактировалось netrino; 28.10.2009 в 19:25.
netrino вне форума Ответить с цитированием
Старый 28.10.2009, 20:47   #3
sleevman
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 15
По умолчанию

все ясно.спасибо. массив нужен функции которая вызывается в цикле.
sleevman вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
access violation at address in module. inkubus Общие вопросы Delphi 11 25.04.2013 19:15
access violation at address UnChanter Общие вопросы Delphi 22 07.02.2011 11:00
Access violation at address... Ralf_ru Помощь студентам 13 05.04.2009 05:20
Access violation at address.. RegentM Общие вопросы Delphi 4 01.11.2007 03:46
Ошибка: "Access violation at address 00454F01 in module 'Project1.exe'. Read of address 00000000. Fen1x Общие вопросы Delphi 8 13.10.2007 20:13