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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sergey1988
2 / 2 / 0
Регистрация: 02.12.2011
Сообщений: 56
#1

Запись в бинарный файл работает не коректно, где ошибка? - C++

11.10.2012, 12:04. Просмотров 531. Ответов 3
Метки нет (Все метки)

Здравствуйте, делаю лабораторную работу, запись структуры Students в бинарный файл. код написал, но он работает корректно только при первом вводе, при последующих почему то пропускает запись фамилии, почему так происходит разобраться не могу, помогите пожалуйста. Код ниже:
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
int Create_file(FILE *data)
{
    Students person;
 
    fseek(data,0,SEEK_END); // указатель в конец файла
    puts(" Ввод данных о студентах");
    puts(" Для выхода введите символ * ");
    puts("_________________________________\n");
 
    while(1)
    {
        puts(" Введите ФИО студента: ");
        cin.getline(person.FIO,len_fio); // ввод ФИО
        if (!strcmp(person.FIO, "*")) // если введена *
            return 1; // выход 
        puts(" Введите номер группы студента: ");
        scanf("%i", &person.GR); // ввод года рождения
        puts( " Введите оценки студента: ");
 
        for ( int i = 0; i < 5; i++)
        {
            puts(" Введите оценку: ");
            scanf("%i", &person.Marks[i]); // запись оценок
        }
        fwrite(&person,size_s,1,data); // запись структуры в файл
        puts(" Для начала cледуещей записи нажмите любую клавишу...");
        getch();
        
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2012, 12:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись в бинарный файл работает не коректно, где ошибка? (C++):

Посмотрите пожалуйста где ошибка. Запись текста в файл - C++
#include &lt;iostream&gt;//программа для записи текста в файл. #include &lt;fstream&gt; #include &lt;string&gt; using namespace std; int main() { ...

Запись в бинарный файл - C++
Помогите приделает функцию что бы она записывала не в обычный файл а в бинарный, уже три чеса сижу выходит ерунда. Надо еще что бы при...

Запись в бинарный файл - C++
По заданию требуется организовать ввод данных типа структуры в бинарных файл , в соответствии с позицией, задаваемой пользователем. При...

Запись в бинарный файл - C++
Всем привет. Столкнулся с следующей проблемой при написании курсача,а именно с записью в бинарный в файл: дело в том, что я каждый раз...

Запись в бинарный файл - C++
Всем привет. Подскажите пожалста как через fstream добавить запись в бинарный файл ? нужно добавить именно В НАЧАЛО , не очищая...

Запись в бинарный файл - C++
Скажите пожалуйста, правильно ли работает моя программа? (Имеется ввиду запись в бинарный файл) #include &quot;stdafx.h&quot; #include...

3
Байт
Нарушитель
Эксперт C
16671 / 10932 / 1674
Регистрация: 24.12.2010
Сообщений: 21,305
11.10.2012, 13:54 #2
Как открываешь файл? Надо
C
1
 data = fopen(name, "wb");
1
kazak
3050 / 2371 / 160
Регистрация: 11.03.2009
Сообщений: 5,436
Завершенные тесты: 1
11.10.2012, 20:53 #3
Цитата Сообщение от sergey1988 Посмотреть сообщение
cin.getline(person.FIO,len_fio); // ввод ФИО
После поставте
cin.sync();
1
sergey1988
2 / 2 / 0
Регистрация: 02.12.2011
Сообщений: 56
12.10.2012, 09:57  [ТС] #4
спасибо помогло!
0
12.10.2012, 09:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2012, 09:57
Привет! Вот еще темы с ответами:

Запись в бинарный файл - C++
Подскажите пожалуйста,где в коде ошибка??никак найти не могу почему х не считает. В файл записываются 0. Задние на картинке. #include...

Запись в бинарный файл - C++
Здравствуйте. Прошу помочь разобраться с проблемой. Необходимо записать в двоичный файл 8-байтовое число, но не как строку, а...

Запись в бинарный файл - C++
Подскажите как записать данные из StringGrid в бинарный файл и компоновка допустим из 2 StringGrid построчно

Запись в бинарный файл вектора - C++
есть вектор typedef struct Point { double x; double y; Point(double x_, double y_) : x(x_), y(y_) {} ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.