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

Вызвано исключение: нарушение доступа для чтения. **this** было 0xA010F788

25.04.2020, 13:35. Показов 1436. Ответов 6
Метки c++ (Все метки)

Студворк — интернет-сервис помощи студентам
При завершении программы вызывается исключение нарушение доступа для чтения. **this** было 0xA010F788. А также некорректно отображается первая буква строки "Адрес"
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
#include <iostream>
#include <ctime>
#include <windows.h>
 
using namespace std;
 
class Elements
{
public:
    int Kol;
    double Price;
    string Address;
};
class Bouquet
{
public:
    Elements* arr;
    int Lenght;
    Bouquet(int size);
    ~Bouquet();
    void Show();
    void Run();
};
Bouquet::Bouquet(int size)
{
    cout << "Введите число букетов: " << endl;
    cin >> size;
    arr = (Elements*)calloc(size, sizeof(Elements));
    this->Lenght = size;
    for (int i = 0; i < size; i++) 
    {
        arr[i].Kol = rand() % 1001 + 3;
        cout << "Адрес:" << endl;
        cin >> arr[i].Address;
        cout << "Цена:" << endl;
        cin >> arr[i].Price;
    }
}
Bouquet::~Bouquet()
{
    delete[] arr;
}
void Bouquet::Show()
{
    cout << "Букеты: " << endl;
    for (int i = 0; i < this->Lenght; i++)
    {
        cout << arr[i].Kol << " " << arr[i].Address << " " << arr[i].Price << endl;
    }
}
void Bouquet::Run()
{
    for (int i = 0; i < this->Lenght; i++)
    {
        if (arr[i].Kol % 2 == 0)
        {
            arr[i].Kol += 1;
        }
    }
}
int main()
{
    srand(time(0));
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    Bouquet mass(0); 
    mass.Run();
    mass.Show();
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.04.2020, 13:35
Ответы с готовыми решениями:

Вызвано исключение: нарушение доступа для чтения. this было 0xCDCDCDCD
Есть у меня код со структурой с динамическими массивами внутри. Через клаву я ввожу данные. И получается, что &quot;subjects&quot; я могу...

Вызвано исключение: нарушение доступа для чтения. s было 0x1110112
Товарищи форумчане, нужна ваша помощь! (Для простоты объяснения прикреплю скрин) Насколько я понимаю, проблема заключается в том,...

Вызвано исключение: нарушение доступа для чтения. _Pnext было 0xCCCCCCD0
Написал код крестиков-ноликов по методу альфа-бета обрезки. Но при выполнении рекурсии, возникает ошибка 0xCCCCCCD0,когда функция пытается...

6
фрилансер
 Аватар для Алексей1153
6468 / 5683 / 1131
Регистрация: 11.10.2019
Сообщений: 15,151
25.04.2020, 13:38
Лучший ответ Сообщение было отмечено NexTime как решение

Решение

arr = (Elements*)calloc(size, sizeof(Elements));

C++
1
arr = new Elements[size];
Добавлено через 1 минуту
а вообще, я бы заменил это
Elements* arr;

на это
std::vector<Elements> arr;
1
1 / 1 / 0
Регистрация: 04.11.2019
Сообщений: 68
25.04.2020, 13:41  [ТС]
Алексей1153, да, спасибо. Я уже заметил, что использовал delete, вместо free
0
фрилансер
 Аватар для Алексей1153
6468 / 5683 / 1131
Регистрация: 11.10.2019
Сообщений: 15,151
25.04.2020, 13:43
NexTime, нет, ты использовал calloc вместо new )
1
1 / 1 / 0
Регистрация: 04.11.2019
Сообщений: 68
25.04.2020, 13:48  [ТС]
Алексей1153, если поменять на free, то исключение тоже исчезает и все работает.
0
фрилансер
 Аватар для Алексей1153
6468 / 5683 / 1131
Регистрация: 11.10.2019
Сообщений: 15,151
25.04.2020, 13:58
по-моему, calloc не вызывает конструкторы.
http://www.cplusplus.com/reference/cstdlib/calloc/

Объект string Address будет вести себя неадекватно

Добавлено через 35 секунд
и вообще, раз пишешь на C++, пользуйся new/delete или контейнерами
0
1 / 1 / 0
Регистрация: 04.11.2019
Сообщений: 68
25.04.2020, 14:04  [ТС]
Алексей1153, да, я уже поменял на new и delete. Еще раз спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.04.2020, 14:04
Помогаю со студенческими работами здесь

Вызвано необработанное исключение: нарушение доступа для чтения. a было 0x34F4A7AE
Исключение в функции Drow_ship. Как это починить? #include &lt;iostream&gt; #include &lt;ctime&gt; #include&lt;iomanip&gt; #include&lt;string&gt; ...

Вызвано исключение: нарушение доступа для чтения. **_Pnext** было 0x92DE94
Здраствуйте нужнаюсь в ваших наставлениях у кого на это есть время. При попытке вывести данные из файла, происходин данная ошибка. ...

Вызвано исключение: нарушение доступа для чтения. **pline** было 0x1C47112
Здравствуйте! Хотелось бы обратиться со следующей проблемой. &quot;Вызвано исключение: нарушение доступа для чтения. **pline** было...

Ошибка Вызвано исключение: нарушение доступа для чтения. first было nullptr
При запуске появляется ошибка &quot;Вызвано исключение: нарушение доступа для чтения. first было nullptr&quot;. #include &lt;iostream&gt; ...

Вызвано необработанное исключение: нарушение доступа для чтения. InvMArr было 0x1110113
#include &quot;stdafx.h&quot; #include&lt;iostream&gt; #include&lt;stdlib.h&gt; #include&lt;time.h&gt; #include&lt;Windows.h&gt; #include &lt;iomanip&gt; using...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru