Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 1

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

04.06.2015, 21:33. Показов 2860. Ответов 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)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.06.2015, 21:33
Ответы с готовыми решениями:

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

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

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

3
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
04.06.2015, 21:38
Цитата Сообщение от Ескин Даниил Посмотреть сообщение
for (int i = 1; i <= size; i++)
Индексация массивов в сях от 0 до size-1. Т.о. все циклы должны быть такого вида:
C++
1
for (int i = 0; i < size; i++)
Тем более странно, что при выделении и удалении циклы правильные.
1
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
04.06.2015, 21:39
C++
1
2
        for (int i = 1; i <= size; i++)
            for (int j = i; j <= size; j++)
при i == size или j == size будет выход за пределы выделенной памяти
1
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
04.06.2015, 21:44
Лучший ответ Сообщение было отмечено Ескин Даниил как решение

Решение

Для начала,
Цитата Сообщение от Ескин Даниил Посмотреть сообщение
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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.06.2015, 21:44
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru