Форум программистов, компьютерный форум CyberForum.ru

Ошибка в указателе - C++

Восстановить пароль Регистрация
 
Hsac
13 / 13 / 1
Регистрация: 30.06.2013
Сообщений: 146
15.11.2013, 05:01     Ошибка в указателе #1
Необработанное исключение по адресу 0x6F274F98 (msvcr110d.dll) в Динамическая матрица.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFEEEFEE2.
вот что выводит когда ввожу матрицы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
int main()
{
setlocale(LC_ALL, "Russian");
 
int N,M,Y,U;
cout << "Введите размер первой" << endl;
cin >> N >> M;
int** p=new int*[N];
for(int i(0); i<N; i++)
p[i] = new int[M];
system("cls");
cout << "Заполните матрицу" << endl;
for (int i(0); i<N; i++)
{
    for (int j(0); j<M; j++)
    {
        cin >> p[i][j];
    }
    cout << endl;
}
system("cls");
 
cout << "Введите размер умножаемой матрицы" << endl;
cin >> Y  >> U;
int** o=new int *[Y];
for (int i(0); i<Y;i++)
o[i] = new int[U];
system("cls");
cout << "Заполните матрицу"<< endl;
for (int i(0); i<Y; i++)
{
    for (int j(0); j<U; j++)
    {
        cin >> o[i][j];
    }
    cout << endl;
}
 
for (int i(0); i<N; i++)
{
delete [] p[i];
delete [] p;
}
for (int i(0); i<Y; i++)
{
delete [] o[i];
delete [] o;
}
в чем ошибка? помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2013, 05:01     Ошибка в указателе
Посмотрите здесь:

НЕ могу разобраться в указателе C++
C++ ошибка в указателе
C++ Конвертация типа или как сэкономить на указателе?
ошибка в указателе C++
Ошибка в указателе. исправьте ) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11819 / 6798 / 769
Регистрация: 27.09.2012
Сообщений: 16,876
Записей в блоге: 2
Завершенные тесты: 1
15.11.2013, 05:44     Ошибка в указателе #2
C++
1
2
3
4
5
6
7
8
9
10
for (int i(0); i<N; i++)
{
delete [] p[i];
delete [] p;//Этот delete за цикл вынесите
}
for (int i(0); i<Y; i++)
{
delete [] o[i];
delete [] o;//Этот тоже
}
Добавлено через 5 минут
C++
1
2
3
4
5
6
7
8
9
10
for (int i(0); i<N; i++)
{
   delete [] p[i];
}
delete [] p;
for (int i(0); i<Y; i++)
{
   delete [] o[i];
}
delete [] o;
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
15.11.2013, 05:47     Ошибка в указателе #3
когда точнее возникает? найдите строчку программы где всё падает, у меня всё норм

но вообще я глянул в конец Вашей проги:
C++
1
2
3
4
5
6
7
8
9
10
for (int i(0); i<N; i++)
{
delete [] p[i];
delete [] p;
}
for (int i(0); i<Y; i++)
{
delete [] o[i];
delete [] o;
}
это меня смутило, наверное имеллось в виду
C++
1
2
3
4
for (int i(0); i<N; i++) delete [] p[i];
delete [] p;
for (int i(0); i<Y; i++) delete [] o[i];
delete [] o;
Hsac
13 / 13 / 1
Регистрация: 30.06.2013
Сообщений: 146
15.11.2013, 06:15  [ТС]     Ошибка в указателе #4
всем спасибо заработала
Yandex
Объявления
15.11.2013, 06:15     Ошибка в указателе
Ответ Создать тему
Опции темы

Текущее время: 15:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru