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

Не понимаю как выхожу за массив(Нарушение прав доступа при чтении по адресу)

02.01.2018, 03:04. Показов 1186. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Для подсчитки формулы решил сделать многомерный массив и записывать в него значения(n-e число Х и в них по 4 значения), но вылажу за массив с таким кодом, подскажите, что я недопонимаю и в чем моя ошибка.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n;
    float **x;
    cout << "Enter a number of X: ";
    cin >> n;
    x = new float*[1000];
    for (int i = 0; i < n; i++) {
        cout << "Enter Z,B,A, Betta for X" << i+1 << ": " << endl;
        cout << "Z: ";
        cin >> x[n][0];
        cout << "B: "; // ошибка указывает почему-то сюда
        cin >> x[n][1];
        cout << "A: ";
        cin >> x[n][2];
        cout << "Betta: ";
        cin >> x[n][3];
    }
"Вызвано исключение по адресу 0x00007FF84013C107 (msvcp140d.dll) в e.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFFFFFFFFFFFFFFFF."
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.01.2018, 03:04
Ответы с готовыми решениями:

Как исправить ошибку? Нарушение прав доступа при чтении по адресу
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;fstream&gt; #define MAIN3DS 0x4D4D #define EDIT3DS 0x3D3D #define EDIT_OBJECT...

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

Вызвано исключение по адресу 0x00B31BEF в Project.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDFDFE0
Написал программу, но выдает ошибку: Вызвано исключение по адресу 0x00B31BEF в Project.exe: 0xC0000005: нарушение прав доступа при чтении...

3
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
02.01.2018, 03:22
alexboliam,
C++
1
x = new float*[1000];
Это просто массив указателей, хранящиеся в нём адреса - мусор и нули. Интерпретировать их как массивы (строки матрицы) - закономерный результат.
1
16 / 16 / 11
Регистрация: 28.10.2016
Сообщений: 75
02.01.2018, 03:46
Как подметили выше, ты создал массив указателей, а не массив массивов.
Гораздо проще сделать через структуры:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct MyS
{
    float A, B, Z, Betta;
};
 
void doSomething(MyS[]);
 
int main()
{
    MyS* x;
    int n = 10;
    x = new MyS[n];
 
    doSomething(x);
 
    _getch();
    return 0;
}
1
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
02.01.2018, 09:56
Лучший ответ Сообщение было отмечено alexboliam как решение

Решение

alexboliam, Все предыдущие ораторы совершенно правы. Но если вам все-таки хочется довести вашу идею до конца, добавьте 3 строчки (после 5-й)
C++
1
2
3
for(int j=0; j<1000; j++)
  x[j] = new float[4];
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.01.2018, 09:56
Помогаю со студенческими работами здесь

Необработанное исключение по адресу 0x00F71B85 в lab 12_1.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0
Всем привет, ошибка возникает при добавлении переменной minqq1, помогите понять в чем проблема, вот код: #include &lt;stdio.h&gt; ...

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

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

C++ Вызвано исключение по адресу 0x00346786 в Smooth_.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x00
void getvector(string file_, vector&lt;double&gt; mass) { ifstream fin; fin.open(file_); if (!fin.is_open()) { cout &lt;&lt; &quot;File...

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru