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

Ошибка xmemory в vs 19

26.05.2020, 11:53. Показов 934. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При запуске программы,вводе последнего из значений(4) выдает ошибку и переходит во вкладу xmemory
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
82
83
84
#include <iostream>
#include <fstream> 
#include <string>
#include <windows.h> // подключаем данную библиотеку для работы с функцией SetConsoleOutputCP(1251);
using namespace std;
 
struct Abiturients
{
    //поля структуры
    string Name;
    string Sex;
    string Nationality;
    string Birth;
    string MarksExam;
    string PassingScore;
 
 
};
int main()
{
    SetConsoleCP(1251); // устанавливает кодировку 1251 для ввода из консоли
    SetConsoleOutputCP(1251); // устанавливает кодировку 1251 для вывода на консоль
    string fileName = "Abiturient"; // имя файла
    Abiturients abiturent[5]; // объявляем массив объектов структуры
    //замолняем элементы массива
    abiturent[0] = { "Gusev D.V", "male ", "Uzbek ","26.06.2002  ","170,175,181  ","160" };
    abiturent[1] = { "Petrov M.V","male ", "Kazah ","13.09.2002  ", "165,181,176  ","165" };
    abiturent[2] = { "Minadzuki K.R", "male ", "Japanese ","25.04.2001   ", "183,140,194  ","160" };
    abiturent[3] = { "Rinatova V.A", "female", "Ukranian", "12.01.2002", "189,135,169","168" };
    abiturent[4] = { "Tohsaka R.V", "female", "Japanese", "03.02.2002", "195,184,193","180" };
    fstream file(fileName, ios::binary | ios::out); // открываем поток для записи в бинарном режиме
    for (int i = 0; i < 5; i++) {
        file.write((char*)&abiturent[i], sizeof(Abiturients));
    }
    file.close();
    file.open(fileName, ios::binary | ios::in);
    Abiturients abt;
    Abiturients* buffer = new Abiturients[5];
    int buf_size = sizeof(Abiturients) * 5;
    if (!file)// проверяем открыт ли файл
        cout << "Ошибка. Файл не был открыт";
    else
    {
        file.read((char*)buffer, buf_size);
        for (int i = 0; i < 5; i++)
        {
            // Выводим элементы структуры
            cout << i << ") " << buffer[i].Name << "   " << buffer[i].Sex << "   " << buffer[i].Nationality << "   " << buffer[i].Birth << "   " << buffer[i].MarksExam << "  " << buffer[i].PassingScore << endl;
        }
        cout << "______________________________________________________________________________________________________________________\n\n";
        file.close();           // закрыть прочитанный файл
    }
    file.open(fileName, ios::binary | ios::in);  // открываем файл для чтения в бинарном режиме
 
    int number = 0;
 
    if (!file)  // проверяем открыт ли файл
        cout << "Ошибка. Файл не был открыт";
    else
    {
        for (int i=0;i<5;i++)
        {
            cout << "\nВведите номер записи:\t";
            cin >> number;
            if (number > 5)
            {
                cout << "Записи под указанным номером не существует\n";
                continue;
            }
            int pos = (number) * sizeof(Abiturients); // умножаем номер записи на ее размер для перемещения к ней
            file.seekg(pos,ios::beg); // переходим на это смещение
            file.read((char*)&abt, sizeof(Abiturients)); // считываем данные из файла
            if (number == 5)
            {   // Выводим элементы структуры по заданному номеру записи
                cout << "\n" << number << "|" << abt.Name << "\t\t" << abt.Sex << "\t\t" << abt.Nationality << "\t\t" << abt.Birth << "\t\t" << abt.MarksExam << "\t\ta" << abt.PassingScore << endl;
                break;
            }
            cout << "\n" << number << "|" << abt.Name << "\t\t" << abt.Sex << "\t\t" << abt.Nationality << "\t\t" << abt.Birth << "\t\t" << abt.MarksExam << "\t\ta" << abt.PassingScore << endl;
        }
        
    }
    file.close(); // закрываем прочитанный файл
    cout << "_____________________________________________________________________________________________________________________________\n";
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.05.2020, 11:53
Ответы с готовыми решениями:

xmemory
Помогите разобраться с ошибкой. Вот сам код , и внизу ошибки. это VC - 98 , и используется VS 6.0...

IIS- asp ошибка: HTTP 500.100 - Внутренняя ошибка сервера - ошибка ASP Internet Information Services
Привет! Конфигурация win2000pro sp2, стандартный IIS, IE 5. При попытке обратиться к...

Ошибка при чтении изменений при обмене РИБ: Ошибка при вызове метода контекста (ПрочитатьИзменения): Ошибка записи!
Доброго всем времени суток! подскажи пожалуйста как исправить ошибку: Ошибка при чтении изменений...

Ошибка при добавлении в файл. Ошибка 101: Ошибка записи на диск (Error 101: Disk write error).
Здравствуйте, возникла проблема такого плана. Нужно произвести добавление записи в файл, но после...

1
18829 / 9832 / 2403
Регистрация: 30.01.2014
Сообщений: 17,270
26.05.2020, 18:58 2
Stin34, читайте про сериализацию и как string устроен внутри.
Вы не можете читать в string таким образом, как сейчас у вас.
1
26.05.2020, 18:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.05.2020, 18:58
Помогаю со студенческими работами здесь

Загружается до окна приветствия и вылетает ошибка: isass.exe - Системная ошибка
Ребята, помогите кто может... весь день бьюсь безрезультатно... с утра пришёл на работу а сервак...

Ошибка CL.exe завершилась с кодом 2 Что это за ошибка и как исправить?
Ошибка появилась, но не могу понять как ее исправить. #include &lt;iostream&gt; using namespace...

ASP: Response.Redirect - не работает, ошибка `500 - Внутренняя ошибка сервера'
Всем привет! Есть в ASP-сраничке такой код: Response.Redirect 'page1.asp?ReturnTo=page2.asp' ...

Ошибка HTTP 500 - внутреняя ошибка сервера при отправке почты.
Я пытаюсь отправить почту и присоединяю к ней письма Вот часть страницы Dim myMail Set myMail =...

Ошибка разбора XML/ Ошибка при вызове метода контекста (Прочитать)
1C 8.2 Документооборот КОРП 1.2 Текст ошибки...

Ошибка SQL запроса , в базе работает, а через IBQuery в Delphi ошибка
В Combobox загружены имена организаций. Нужно выполнить запрос на вывод всех полей таблицы...


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

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

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