0 / 0 / 0
Регистрация: 31.03.2020
Сообщений: 36
1

Ошибка в коде: “Вызвано исключение: нарушение доступа для чтения.”

27.04.2020, 18:01. Показов 286. Ответов 1

Author24 — интернет-сервис помощи студентам
Здравствуйте!Ошибку выдает в 51 строке:"вызвано исключение: нарушение доступа для чтения.gg было 0x16B4112."
Вот сам код:
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
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
 
using namespace std;
 
string text = "D:\\Студенты.txt";
 
struct zchit {
    char kilkist[30];
    int ocenka;
};
void info() {
    string line;
    ifstream in(text);
    if (in.is_open()) {
        cout << "Данные учеников: " << endl;
        while (getline(in, line)) {
            cout << line << endl;
        }
        in.close();
    }
    else cout << "Файл не найден!" << endl;
}
void stud() {
    int i,c;
    cout << "Введите количество студентов: " << endl;
    cin >> c;
    cout << "---------------------------------------------------" << endl;
    zchit* gg = new zchit[c];
    for (i = 0; i < c; i++)
    {
        cout << "Студент #" << i + 1 << endl;
        cout << "Введите ФИО студента: " << endl;
        cin.get();
        cin.getline(gg[i].kilkist, 30);
        cout << "Введите оценку: ";
        cin >> gg[i].ocenka;
        ofstream writeData;
        writeData.open(text, ios::app);
        writeData << endl << " " << "ФИО: " << gg[i].kilkist << " " << endl << "Оценка: " << gg[i].ocenka << " " << endl;
        writeData.close();
    }
    delete[]gg;
    cout << "Студенты добавлены!" << endl;
}
void ocenka(zchit* gg, int c)
{
    for (int i = 0; i < c; i++)
        if (gg[i].ocenka > 2) cout << gg[i].kilkist << "\n";
}
int main(zchit gg,int c) {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    setlocale(LC_ALL, "Rus.1251");
    system("CLS");
    int action;
    bool exit = true;
    while (exit) {
        system("cls");
        cout << "\tМеню :\n1 - Добавить студента \n2 - Все ведомости \n3 - Список допущених на второй экзамен \n Выберите действие: ";
        cin >> (action);
        switch (action) {
        case 1:
            stud();
            system("pause");
            break;
        case 2:
            info();
            system("pause");
            break;
        case 3:
            ocenka(&gg, c);
            system("pause");
            break;
        default:
            break;
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.04.2020, 18:01
Ответы с готовыми решениями:

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

Ошибка: Вызвано исключение: нарушение доступа для чтения. print было nullptr
Здравствуйте, практикуясь с задание по односвязному списку застрял на непонятной для меня ошибки на...

Выскакивает ошибка: Вызвано исключение: нарушение доступа для чтения. c было 0x1D83F5A
Привет всем. Дали задание: ввести из файла в массив элементы, кол-во задается пользователем, затем...

Вызвано исключение: нарушение доступа для чтения
Всем привет! Пишу программу, которая должна записать в файл в первом столбике рандомную цифру или...

1
Модератор
Эксперт С++
13498 / 10752 / 6407
Регистрация: 18.12.2011
Сообщений: 28,692
27.04.2020, 19:53 2
Цитата Сообщение от KreeDo Посмотреть сообщение
int main(zchit gg,int c) {
Такой функции быть не может.
main имеет только 2 прототипа
C++
1
int main();
и
C++
1
int main(int argc,char** argv);
Добавлено через 5 минут
Рассмотрим функцию
Цитата Сообщение от KreeDo Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
void stud() {
   ...
    zchit* gg = new zchit[c]; // gg локальная переменная, вне функции не видна
    for (i = 0; i < c; i++)
    {
        ... ввод gg[i]
          
    }
    delete[]gg; // и зачем понадобилось создавать этот массив, если он нигде не использовался 
    cout << "Студенты добавлены!" << endl;
}
0
27.04.2020, 19:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2020, 19:53
Помогаю со студенческими работами здесь

Вызвано исключение: нарушение доступа для чтения
Пытался реализовать класс для работы с двумерными матрицами, которые хранятся в одномерных...

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

вызвано исключение нарушение доступа для чтения
Выдаёт исключение на 35 строке, ругается на переменную nach. #include &quot;stdafx.h&quot; #include...

Вызвано исключение: нарушение доступа для чтения. **this**
Здравствуйте уважаемые! Выскакивает ошибка: Вызвано исключение: нарушение доступа для чтения....

Вызвано исключение: нарушение доступа для чтения
Здравствуйте. Во время выполнения кода компилятор вызвал ошибку. Не могу понять, в чём дело. Может...

Вызвано исключение: нарушение доступа для чтения
Программа обрабатывает двумерный массив. На 45-й строке выдает ошибку. #include &quot;stdafx.h&quot;...


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

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

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