0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 1
1

Нарушение прав доступа при чтении по адресу 0xCCCCCCD0

04.06.2015, 21:33. Показов 2589. Ответов 3
Метки нет (Все метки)

На 21 строке крашится с такой ошибкой: Необработанное исключение по адресу 0x00285614 в Isomoph.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCCCCCCD0.
Кликните здесь для просмотра всего текста
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include <iostream>
using namespace std;
class graf
{
private:
    int **matrix;
    int size;
public:
    graf(int n1)
    {      //Конструктор класса
        size = n1;
        int **matrix = new int*[size];
        for (int i = 0; i < size; i++)
            matrix[i] = new int[size];
    }
    void enter()
    {
        for (int i = 1; i <= size; i++)
            for (int j = i; j <= size; j++)
            if (i == j)
                matrix[i][j] = 0;
            else
            {
                cout << "Соеденить " << i << " и " << j << " вершину?(1/0)" << endl;
                cin >> matrix[i][j];
                cout << matrix[i][j]<<endl;
                matrix[j][i] = matrix[i][j];
            }
    }
    int getelem(int i, int j)
    {
        return matrix[i][j];
    }
    ~graf()
    {
        for (int i = 0; i<size; i++)
        {
            delete[](matrix[i]);
        }
        delete[](matrix);
    }
 
};
 
 
void sort(int *arr, int size)//Сортировка матрицы степеней
{
    int tmp;
 
    for (int i = 0; i < size - 1; ++i) // i - номер прохода
    {
        for (int j = 0; j < size - 1; ++j) // внутренний цикл прохода
        {
            if (arr[j + 1] < arr[j])
            {
                tmp = arr[j + 1];
                arr[j + 1] = arr[j];
                arr[j] = tmp;
            }
        }
    }
}
 
void main()
{
    setlocale(LC_ALL, "Russian");
    int n1, n2;
    bool res = true;
    cout << "Введите количество вершин 1 матрицы" << endl;
    cin >> n1;
    graf matr1(n1);
    matr1.enter();
    cout << "Введите количество вершин 2 матрицы" << endl;
    cin >> n2;
    graf matr2(n2);
    matr2.enter();
    if (n1 == n2)
    {
        int *series1 = new int[n1];
        int *series2 = new int[n2];
        for (int i = 0; i < n1; i++)
        {
            series1[i] = 0;
            series2[i] = 0;
        }
        for (int i = 0; i < n1; i++)
            for (int j = 1; j <= n1; j++)
            {
 
                series1[i] = series1[i] + matr1.getelem(i + 1, j);//Заполняем матрицу степеней 1 матрицы
                series2[i] = series2[i] + matr2.getelem(i + 1, j);//Заполняем матрицу степеней 2 матрицы
            }
        sort(series1, n1);
        sort(series2, n2);
        for (int i = 0; i < n1, res = true; i++)
            if (series1[i] != series2[i])
                res = false;
    }
    else
        res = false;
    if (!res) cout << "Матрицы не изоморфны" << endl;
    else cout << "Матрицы изоморфны" << endl;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2015, 21:33
Ответы с готовыми решениями:

Вызвано исключение по адресу 0x013C1891 в Jacobi.exe: 0xC0000005: нарушение прав доступа при чтении по адресу
#include &lt;math.h&gt; const double eps = 0.001; ///&lt; желаемая точность /// N - размерность...

Необработанное исключение по адресу 0x00105FD7 в Динамические структуры: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCDCDCE09
Необработанное исключение по адресу 0x00105FD7 в Динамические структуры.exe: 0xC0000005: нарушение...

Необработанное исключение по адресу 0x00ED4891 в strings.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xCCCCCCCC
Программа толком не написан, проверял ранд и возникли проблемы. Ф-ция ранд генерирует одно и тоже...

Необработанное исключение по адресу 0x001B3371 в XXX.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDF
Делал консольную змейку и столкнулся вот с такой проблемой. void stena(char **arr) { int y...

3
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
04.06.2015, 21:38 2
Цитата Сообщение от Ескин Даниил Посмотреть сообщение
for (int i = 1; i <= size; i++)
Индексация массивов в сях от 0 до size-1. Т.о. все циклы должны быть такого вида:
C++
1
for (int i = 0; i < size; i++)
Тем более странно, что при выделении и удалении циклы правильные.
1
Don't worry, be happy
17758 / 10526 / 2030
Регистрация: 27.09.2012
Сообщений: 26,502
Записей в блоге: 1
04.06.2015, 21:39 3
C++
1
2
        for (int i = 1; i <= size; i++)
            for (int j = i; j <= size; j++)
при i == size или j == size будет выход за пределы выделенной памяти
1
Модератор
Эксперт С++
12081 / 9760 / 5902
Регистрация: 18.12.2011
Сообщений: 26,202
04.06.2015, 21:44 4
Лучший ответ Сообщение было отмечено Ескин Даниил как решение

Решение

Для начала,
Цитата Сообщение от Ескин Даниил Посмотреть сообщение
for (int i = 0; i < n1, res = true; i++)
компилятор предупреждает
warning C4706: назначение в пределах условного выражения
Можете запросто отхватить бесконечный цикл, т.к. сначала выполнится i<n1,
а потом res=true и результат условия всегда истина.

Добавлено через 2 минуты
C++
1
2
3
4
5
6
7
graf(int n1)
    {      //Конструктор класса
        size = n1;
       matrix = new int*[size]; // matrix - Член класса, ее не надо объявлять повторно
        for (int i = 0; i < size; i++)
            matrix[i] = new int[size];
    }
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.06.2015, 21:44
Помогаю со студенческими работами здесь

Нарушение прав доступа при чтении по адресу
Здравствуйте. Вот в этом коде(двусвязный список) выбивает такую штуку: Необработанное исключение...

Нарушение прав доступа при чтении по адресу
Всем привет, помогите пожалуйста! Вызвано исключение по адресу 0x00C329FB в...

Нарушение прав доступа при чтении по адресу
#include &lt;iostream&gt; #include &lt;locale.h&gt; #include &lt;cstring&gt; #include &lt;cmath&gt; using namespace...

Нарушение прав доступа при чтении по адресу
Доброго времени суток! Пишу некую прогу. Так вот у меня выпадает ошибка, на скринах показана....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru