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

Необработанное исключение: нарушение прав доступа при записи

04.06.2014, 05:03. Показов 3401. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть функция ввода текста. Текст с неизвестным количеством и длиной строк.
При отладке прерывается и выдает:
"Необработанное исключение в "0x012d107b" в "Курсач1.exe": 0xC0000005: Нарушение прав доступа при записи "0xbaadf00d"."
Как я понял проблемы с выделением. Заранее благодарен

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
char **text(char *razd)     //ввод текста
{
    char **txt;
    int **Len;
    bool p;
    int j=-1;
    int i=0;
    int n=0;
    int frazd;
    int L;
    int s;
    txt = NULL;
    
    txt = (char**)malloc((i+1)* sizeof(char*)); //выделяем память под массив указателей на строки - i штук
    cout << "Введите текст:\n";
    do
    {    
        frazd=0;
        j++;
        txt[i][j]=getche();
        txt[j]=(char*)realloc(txt[j],(i+1)*sizeof(int)); // в этом месте при отладке прерывается
        
        s=-1;
        for (s=0; razd[s]!='\0'; s++) 
        {
            if (txt[i][j]==razd[s])
                frazd=1;
        };
    
        usl(razd, txt, i,j, frazd, Len, n, L);
    
    } while (p=true);
        
    return (txt);
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2014, 05:03
Ответы с готовыми решениями:

Необработанное исключение по адресу, нарушение прав доступа при записи по адресу
вот само задание: Авиарейсы (номер рейса, пункт назначения, время вылета, дата вылета, стоимость...

Необработанное исключение: "Нарушение прав доступа при записи"
Подскажите в чём проблемма происходит ошибка при выполнение программы #include &lt;iostream&gt;...

Исправить ошибку: необработанное исключение по адресу, нарушение прав доступа при записи по адресу
Помогите, пожалуйста, исправит ошибку. Необработанное исключение по адресу 0x77D88E19 (ntdll.dll)...

Необработанное исключение. Нарушение прав доступа при чтении
Ребят помогите. В общем есть программа, открывает один файл, ищет в нем последовательности,...

6
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
04.06.2014, 05:20 2
1. У тебя цикл по переменной p, которая даже не инициализирована и больше никак не меняется. То есть он либо вообще не выполнится, либо будет бесконечным, в зависимости от того, что в памяти попадется, пипец....
2. Массив txt размера на один указатель. После первого прохождения цикла j уже больше нуля и присвоение чего либо в txt[j] естественно дает ошибку.
1
1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 15
04.06.2014, 05:39  [ТС] 3
1. p вернет функция usl

C++
1
p = usl(razd, txt, i,j, frazd, Len, n, L);
Тут все в норме.

2. а тут как поправить так и не догнал
0
447 / 300 / 65
Регистрация: 12.10.2009
Сообщений: 1,162
04.06.2014, 05:41 4
задание огласи, а то это сферический кот в вакууме
0
1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 15
04.06.2014, 05:44  [ТС] 5
Ввести строку символов – разделителей и массив строк текста с неизвестным заранее количеством строк. Признаком окончания ввода текста является ввод строки, в которой слова располагаются в порядке неубывания количества символов в них...

Непосредственно ввод текста
0
447 / 300 / 65
Регистрация: 12.10.2009
Сообщений: 1,162
04.06.2014, 08:38 6
ввод неограниченного количества строк, выход по нажатию Enter, использовние стандартной библиотеки std языка C++, компилятор MS VS 2010, консоль
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// stdafx.h: включаемый файл для стандартных системных включаемых файлов
// или включаемых файлов для конкретного проекта, которые часто используются, но
// не часто изменяются
//
 
#pragma once
 
#include "targetver.h"
 
#include <stdio.h>
#include <tchar.h>
#include <string>
#include <iostream>
#include <list>
 
using namespace std;
// TODO: Установите здесь ссылки на дополнительные заголовки, требующиеся для программы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//main.cpp
#include "stdafx.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    std::list<string> stringLists;
    string data;
    do
    {
        cout<<"Введите строку (ENTER - выход): ";
        getline(cin, data);
        if (data.length()!=0) stringLists.push_back(data);
    }
    while (data.length()!=0);
    cout<<"Ввод данных завершен. Нажмите ENTER для выхода";
    getline(cin, data); 
    return 0;
}
0
1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 15
04.06.2014, 08:52  [ТС] 7
По заданию вводить обязательно с динамическим выделением (malloc/realloc) в этом собственно и загвоздка.
0
04.06.2014, 08:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.06.2014, 08:52
Помогаю со студенческими работами здесь

Необработанное исключение по адресу 0x008B94C5. 0xC0000005: нарушение прав доступа при чтении по
Здравствуйте! Функция должна искать локальные минимумы массива. То есть это элементы,которые меньше...

Необработанное исключение в "0x776315de" в "c++1.exe": 0xC0000005: Нарушение прав доступа при записи "0x40e000
Здравствуйте. Только начал работать с динамическим массивом, но не могу понять почему появляется...

Необработанное исключение в "0x104b2288" в "Matrix.exe": 0xC0000005: Нарушение прав доступа при записи "0xcdcd
Вот такая ошибка!

Необработанное исключение по адресу 0x00E730CD в ConsoleApplication18.exe: 0xC0000005: нарушение прав доступа при чтении
Задана целочисленная динамическая матрица M. Элементы этой матрицы, без остатка делящиеся на 6,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru