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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197
#1

Нарушение прав доступа - C++

24.10.2013, 21:14. Просмотров 400. Ответов 8
Метки нет (Все метки)

Выдает вот это
Необработанное исключение в "0x000d1e05" в "зпр3.exe":
0xC0000005: Нарушение прав доступа при чтении "0xfdfdfe05".

В этой функции
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
//Сортировка
void sort(int n, int m, float** matrix)
{
    //Выбор элемента для сравнения
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            int x=0;
            int y=0;
            float servp=matrix[i][j];
            //Поиск элемента для замены
            while (x<n)
            {
                while (y<m)
                {
                    if (matrix[i][j]>matrix[x][y])
                    {
                        break;
                        break;
                    }
                    else
                    {
                        x++;
                        y++;
                    }
                }
            }
            matrix[i][j]=matrix[x][y] ;//Ошибка здесь
            matrix[x][y]=servp;
        }
    }
}
Не пойму что делать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.10.2013, 21:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нарушение прав доступа (C++):

Нарушение прав доступа - C++
// ConsoleApplication1.cpp: определяет точку входа для консольного приложения. //get - seletor, set - modificator, show - вывод ...

Ошибка: Нарушение прав доступа - C++
Здравствуйте, пишу программу для минимизации канонических выражений (сумм минтермов). Проблема такая - всё компилируется, а при...

Указатель (нарушение прав доступа) - C++
После того как заменяет символ выдает ошибку &quot; нарушение прав доступа&quot; (когда увеличиваю указатель). Что не так? После замены символа...

Нарушение прав доступа к виртуальной функции - C++
Добрый день! Начал недавно изучать работу с файлами и попытался реализовать следующее: Есть базовый класс person, у которого 3...

Ошибка: нарушение прав доступа по адресу - C++
Добрый день! Очень надеюсь на вашу помощь. Пыталась написать программу, которая строит все перестановки, используя Backtracking. Построение...

Нарушение прав доступа при записи - C++
Всем привет, нужно было сделать справочник, atoi(a) выделяет как ошибку, ЧЯДНТ? #include &lt;iostream&gt; #include &lt;fstream&gt; #include...

8
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
24.10.2013, 21:22 #2
Угу. Строки 19 и 20 наводят на мысль :-)
0
newbie666
Заблокирован
24.10.2013, 21:24 #3
Цитата Сообщение от Angeline Посмотреть сообщение
Не пойму что делать.
использовать stl
Ты лучше скажи, чё хочешь сделать, а тут какой то бред сивой кобылы
0
dane.yeah
15 / 15 / 1
Регистрация: 08.04.2012
Сообщений: 133
24.10.2013, 21:27 #4
а одного брейка не хватает?
0
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197
24.10.2013, 21:28  [ТС] #5
Хочу добиться сортировки матрицы. То что там бред я догадываюсь(100 раз переписала уже циклы, скорее всего в очередной раз писала и написала бред). Вопрос в том, как исправить ошибку с доступом к памяти.
0
dane.yeah
15 / 15 / 1
Регистрация: 08.04.2012
Сообщений: 133
24.10.2013, 21:29 #6
Angeline, а какая сортировка то нужна?)
0
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197
24.10.2013, 21:43  [ТС] #7
Два брейка там на два вайла.

Добавлено через 1 минуту
От меньшего к большему и от большего к меньшему. Алгоритм там одинаковый, так что достаточно будет скопировать и поменять знак.

Добавлено через 1 минуту
newbie666, что такое stl? Только не смейтесь.

Добавлено через 10 минут
Господи, зачем я запихнула ++ в один цикл, при чем это я только что сделала... Ппц, у меня с этой программы уже крыша едет.
0
dane.yeah
15 / 15 / 1
Регистрация: 08.04.2012
Сообщений: 133
24.10.2013, 21:51 #8
Angeline, ну попробуйте вот с этим поработать, а можно sort() из <algorithm> с предикатом использовать

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
#include <iostream>
#include <cstdlib>
#include <clocale>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"");
    const int rows = 3;
    const int cols = 3;
    int matrix[rows][cols];
    
    for(int i = 0; i < rows; ++i) {
        for(int j = 0; j < cols; ++j)
            matrix[i][j] = rand() % 9;
    }
    
    cout << "Исходная матрица: " << endl;
    for(int i = 0; i < rows; ++i) {
        for(int j = 0; j < cols; ++j)
            cout << matrix[i][j] << " ";
            
        cout << endl;
    }
    
    for(int k = 0; k < rows * cols; ++k) {
        for(int i = 0; i < rows; ++i) {
            for(int j = 0; j < cols; ++j) {
                if(j != cols - 1) {  
                    if(matrix[i][j+1] < matrix[i][j]) {
                        int tmp = matrix[i][j+1];
                        matrix[i][j+1] = matrix[i][j];
                        matrix[i][j] = tmp;
                    }
                }
                else {
                    if((matrix[i+1][0] < matrix[i][j]) && (i != rows - 1)) {
                        int tmp = matrix[i+1][0];
                        matrix[i+1][0] = matrix[i][j];
                        matrix[i][j] = tmp;
                    }
                }
            }
        }
    }
    
    cout << "Сортированная матрица: " << endl;
    for(int i = 0; i < rows; ++i) {
        for(int j = 0; j < cols; ++j)
            cout << matrix[i][j] << " ";
            
        cout << endl;
    }
    
    system("pause");
}
1
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197
24.10.2013, 22:04  [ТС] #9
dane.yeah, я поработаю, спасибо. Только поясните пожалуйста строки 3, 5, 9 и 55 что делают? И еще переведите на русский фразу
Цитата Сообщение от dane.yeah Посмотреть сообщение
можно sort() из <algorithm> с предикатом использовать
0
24.10.2013, 22:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.10.2013, 22:04
Привет! Вот еще темы с ответами:

Нарушение прав доступа при чтении - C++
Вот пишу игру морской бой, решил написать функцию, которая расставляет корабли, при это необходимо их расставлять через одну клетку друг от...

Необработанное исключение нарушение прав доступа - C++
Можно ли отловить исключение, которое потом выдает компилятор как &quot;необработанное исключение нарушение прав доступа&quot; Если можно, то как? ...

Нарушение прав доступа при записи - C++
void FilterStamp() { char ch; cout&lt;&lt;&quot;Введите Да или Нет: &quot;; scanf_s(&quot;%s&quot;,ch); cout&lt;&lt;endl; l1=first; while(l1!=0)...

Строки. Нарушение прав доступа к чтению - C++
Доброго времени суток! Возникла проблема в это коде. Компилятор выдает ошибку о нарушении прав доступа к чтению: void FindRepeat(char**...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru