Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

не могу читать файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ bad_alloc обработка исключений http://www.cyberforum.ru/cpp-beginners/thread582134.html
Доброго времени суток! Есть класс для работы со структурой типа связный список. Имеется функция для добавления элемента в начало списка: template <class TYPE> void linklist <TYPE>::putinbeg( TYPE d...
C++ Создать класс-шаблон, содержащий поля для хранения одномерного массива Создать класс-шаблон, содержащий поля для хранения одномерного массива и количества элементов в массиве. Описать методы для инициализации и вывода элементов массива на экран, а так же для подсчета... http://www.cyberforum.ru/cpp-beginners/thread582127.html
C++ Даны действительные числа
Даны действительные числа a1,...,a30.Получить max(a1+a30,a2+a29,...,a15+a16).Только программу нужно упростить и что бы использовались функции. #include <iostream> int main(int argc, char **argv)...
Считать с потока строку в std::wstring C++
Есть ли аналог std::string str; getline(cin,str); для std::wstring ???
C++ Длина Ломаной http://www.cyberforum.ru/cpp-beginners/thread582080.html
Помогите пожалуйста написать программку, вот задание : ломаная задана координатами своих вершин.Найти ее длину.Использовать функцию для расчета длины одного звена.Вот функция по которой считать длину...
C++ Бинарное дерево.Нужно исправить код Написать программу учета нарушений правил дорожного движения. Для каждой автомашины необходимо хранить в базе список нарушений. Для каждого нарушения фиксируется дата, время, вид нарушения и размер... подробнее

Показать сообщение отдельно
Виталий123
-96 / 5 / 2
Регистрация: 29.11.2011
Сообщений: 84
22.05.2012, 02:43  [ТС]
MrGluck,
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#include "stdafx.h"
#include <locale.h>
#include <conio.h>
#include <iostream>
#include <fstream>
 
using namespace std;
 
struct student
{
    int zachet;
    int IIIifr_student;
    char FIO[256];
};
 
struct gruppa
{
    int IIIifr_gruppa;
    int IIIifr_faculteta;
    int kolVo_student;
};
 
struct predmet
{
    int IIIifr_predmeta;
    char name_predmet[256];
    char lekter;
};
 
struct vedomost
{
    int IIIifr_vedomost;
    int zachet_vedomost;
    int otmetka;
};
 
student* notaS[256];
unsigned int a = 0;
 
fstream fp1; //*fp2, *fp3, *fp4;
 
void add(void);
void show(void);
void save(void);
void load(void);
 
int main()
{
    setlocale(LC_ALL, "");
    int y;
    do 
    {
        cout<<"\n\n\n";
        cout<<"1. Добавить запись"<<endl
            <<"2. Удалить запись"<<endl
            <<"3. Редактировать запись"<<endl
            <<"4. Вывод по связанному полю"<<endl
            <<"5. Расчет"<<endl
            <<"6. Сортировка записей по отдельным полям"<<endl
            <<"8. Вывод всей базы"<<endl
            <<"9. Сохранить БД"<<endl
            <<"10. Загрузить БД"<<endl
            <<"11. Очистить БД"<<endl
            <<"0. Выход"<<endl;
        cin>>y;
        switch(y)
        {
        case 1:
            add();
            break;
        case 8:
            show();
            break;
        case 9:
            save();
            break;
        case 10:
            load();
            break;
        case 11:
            //clearr();
            break;
        }
    } while(y != 0);
    getch();
    return 0;
}
 
 
 
//Добавить запись
void add(void)
{
    char y;
    do 
    {
        notaS[a] = new student;
        cout<<"ФАЙЛ СТУДЕНТА"<<endl;
        cout<<"1. № зачетной книжки"<<endl;
        cin>>notaS[a]->zachet;
        cout<<"2. Шифр группы"<<endl;
        cin>>notaS[a]->IIIifr_student;
        cout<<"3. Ф.И.О"<<endl;
        a++;
        cout<<"Продожить y Выход n"<<endl;
        cin>>y;
    } while(y == 'y');
}
 
void show(void)
{
      for(int i = 0; i < a; i++)
        cout<<"sadsa"<<notaS[i]->IIIifr_student;
}
 
void save(void)
{
    fp1.open("D:\\student.dll", ios::out | ios::binary);
    fp1.seekg(0);
    fp1.write((char*)&a, sizeof(a));
    for(unsigned int i = 0; i < a; i++)
    {
        unsigned int lineS = sizeof(notaS[i]->IIIifr_student);
        fp1.seekg(sizeof(a) + i * lineS);
        fp1.write((char*)&notaS[i]->IIIifr_student, sizeof(notaS[i]->IIIifr_student));
    }
    fp1.close();
}
 
void load(void)
{
    unsigned int l = 0;
    fp1.open("D:\\student.dll", ios::in | ios::binary);
    fp1.seekg(0);
    fp1.read((char*)&l, sizeof(l));
    for(unsigned int i = 0; i < l; i++)
    {
        unsigned int lineS = sizeof(notaS[i]->IIIifr_student);
        fp1.seekg(sizeof(l) + i * lineS);
        fp1.read((char*)&notaS[i]->IIIifr_student, sizeof(notaS[i]->IIIifr_student));
    }
    show();
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru