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

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

Войти
Регистрация
Восстановить пароль
 
kkk008009kkk
46 / 46 / 1
Регистрация: 24.03.2011
Сообщений: 315
#1

Чтение структуры из файла - C++

15.04.2012, 22:31. Просмотров 732. Ответов 6
Метки нет (Все метки)

Добрый день.

Пытаюсь считать структуру из файла в структуру(идентичную структуре файла) получается такой код:

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
#include <stdio.h>
#include <iostream>
 
struct tbook {
  double y;
  double x[4];
  double c[5];
  double z1[4];
  double z2[4];
  double z3[4];
  };
 
  int main()
{
      
      tbook book;
      int i, n; 
  FILE *f;
 
      f = fopen ( "books.dat", "rb" );
n = fread ( book, sizeof(tbook), 1, f );//здесь получается ошибка
 
fclose ( f );
getch();
 
 
}
Явно, что-то не то делаю. Объясните, как сделать, пожалуйста.

Добавлено через 20 минут
Пришел к такому варианту:

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
#include <stdio.h>
#include <conio.h>
 
struct tbook {
  double y;
  double x[4];
  double c[5];
  double z1[4];
  double z2[4];
  double z3[4];
  };
 
int main()
 
{
  tbook B[1];
  int i, n; 
  FILE *f;
  f = fopen ( "books.dat", "rb" );
  n = fread ( B, sizeof(tbook), 100, f );
  fclose(f);
  
  fclose ( f );
  printf ( "%f",B[1].c[1]);
  getch();
  return 0;
}
Однако не работает.((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2012, 22:31     Чтение структуры из файла
Посмотрите здесь:

Чтение структуры из файла - C++
Всем привет! Уже неделю бьюсь, задача связана с решением системы линейных ур-ий. Есть текстовый файл. В нем в виде матрицы...

Чтение структуры из файла - C++
мне надо считать структуру из файла и вывести данные на экран. считывать-то считывает.. но вот выводит ерунду какую-то. помогите...

Чтение структуры из файла - C++
Добрый вечер. Помогите пожалуйста застрял на одном месте: 1. Используя ввод-вывод в стиле С++ создать файл и записать в него...

Чтение структуры с файла - C++
Имеется следующая структура: struct car { int id; char brand; char model; int yearOfRelease; char color; ...

Чтение из файла структуры - C++
Есть небольшая и непонятная проблема вот весь код программы #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; #include...

Чтение структуры из бинарного файла - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; using namespace std; int main(void) { setlocale (0,&quot;&quot;); ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
15.04.2012, 22:36     Чтение структуры из файла #2
Цитата Сообщение от kkk008009kkk Посмотреть сообщение
Пришел к такому варианту
Да можно было просто
C++
1
n = fread ( &book, sizeof(tbook), 1, f );
Цитата Сообщение от kkk008009kkk Посмотреть сообщение
Однако не работает.((
Файл 2 раза с какой целью закрываете?

Цитата Сообщение от kkk008009kkk Посмотреть сообщение
printf ( "%f",B[1].c[1]);
Индексы с нуля начинаются
C++
1
printf ( "%f",B[0].c[1]);
при таком подходе.

А вообще странный какой-то С++, очень С напоминает...
kkk008009kkk
46 / 46 / 1
Регистрация: 24.03.2011
Сообщений: 315
15.04.2012, 22:45  [ТС]     Чтение структуры из файла #3
easybudda, Сейчас пришел к такому варианту:

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
#include <stdio.h>
#include <conio.h>
 
struct tbook {
  double y;
  double x[4];
  double c[5];
  double z1[4];
  double z2[4];
  double z3[4];
  }book;
 
int main()
 
{
  
  int i, n; 
  FILE *f;
  f = fopen ( "books.dat", "rb" );
  (fread(&book,sizeof(struct tbook), 1, f);//здесь ошибка
  fclose(f);
  
 
  //printf ( "%f",B[1].y);
  getch();
  return 0;
}
Но опять ошибка.

П.С.Работаю на Dev-C++
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
15.04.2012, 22:46     Чтение структуры из файла #4
Цитата Сообщение от kkk008009kkk Посмотреть сообщение
Но опять ошибка.
Какая - угадать нужно?
kkk008009kkk
46 / 46 / 1
Регистрация: 24.03.2011
Сообщений: 315
15.04.2012, 22:49  [ТС]     Чтение структуры из файла #5
easybudda, В комментариях написал в коде, где ошибка выскакивает.

А пишет:

C++
1
 expected `)' before ';' token
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
15.04.2012, 22:52     Чтение структуры из файла #6
Цитата Сообщение от kkk008009kkk Посмотреть сообщение
easybudda, В комментариях написал в коде, где ошибка выскакивает.

А пишет:

C++
1
 expected `)' before ';' token
скобка перед fread лишняя Т_т
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2012, 22:54     Чтение структуры из файла
Еще ссылки по теме:

Корявое чтение структуры из файла - C++
Утро доброе. Читаю начало файла в такую структуру: struct Header { int Code; // 0 int UnUsed1; // 4 int...

Чтение данных структуры из файла - C++
Здравствуйте. Объясните как можно исправить, что бы информация с файла считывалась в программу? Вот то что я пробовал делать: ...

Чтение 10-ой структуры из бинарного файла - C++
Здравствуйте как это реализовать, не перебирая все структуры.

Запись и чтение структуры в/из файла - C++
Столкнулся с очередной проблемой. Есть несколько участков кода: Структура &quot;Абонент&quot;: struct Subscriber { char FIO ; ...


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

Или воспользуйтесь поиском по форуму:
kkk008009kkk
46 / 46 / 1
Регистрация: 24.03.2011
Сообщений: 315
15.04.2012, 22:54  [ТС]     Чтение структуры из файла #7
Разобрался. Хотел бы еще узнать:

Порядок списка

C++
1
2
3
4
5
6
 double y;
  double x[4];
  double c[5];
  double z1[4];
  double z2[4];
  double z3[4];
влияет на результат?

Почему-то при разной сортировке выдает разный результат
Yandex
Объявления
15.04.2012, 22:54     Чтение структуры из файла
Ответ Создать тему
Опции темы

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