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

Считывание данных из бинарного файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки http://www.cyberforum.ru/cpp-beginners/thread115779.html
Дана строка, заканчивающаяся точкой. Подсчитать, сколько слов в строке.
C++ <string.h> Из строки нужно удалить все слова в которых есть арабские цыфры. http://www.cyberforum.ru/cpp-beginners/thread115776.html
string И getline C++
string name; cout <<"Name -> "; getline(cin,name); cout <<"OK, "<<name; 2 раза требует ввод почему?
Запись информации в конец файла C++
Доброго времени суток!Появилась небольшая проблема, помогите, пожалуйста.Необходимо записать информацию в конец файла, у меня получается так, что при повторной работе программы данные, записанные в файл затираются, а новые записываются.Язык С++.Заранее благодарна!
C++ Вставить нулевую строку и нулевой столбец перед строкой и столбцом, где находится первый минимальный элемент. http://www.cyberforum.ru/cpp-beginners/thread115769.html
3. Вставить нулевую строку и нулевой столбец перед строкой и столбцом, где находится первый минимальный элемент. Люди,помогите написать прогу...
C++ Подсчитать количество слов в строке 1.Дано строку слова в которой разделены пробелом (1 или несколькими). Подсчитать количество слов в даной строке. 2.Дано текст. Подсчитать количество строк. подробнее

Показать сообщение отдельно
Horrorous
0 / 0 / 0
Регистрация: 13.04.2009
Сообщений: 38
12.04.2010, 17:27     Считывание данных из бинарного файла
Доброго времени суток.
Моя проблема уже была озвучена в теме.

Вот листинг функции которая должна считывать данные из бинарного файла.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
DLL_import int LoadList(const char *name)
{
      FILE *f = fopen(name, "rb");
if(!f){
    puts("Can't open file!");
    return 0;
  }
  fseek(f,0,SEEK_END);
  cnt = ftell(f);
  fseek(f,0,SEEK_SET);
  if(cnt % sizeof(Comp)){
    puts("Incorrect file!");
    fclose(f);
    return 0;
  }
  cnt /= sizeof(Comp);
  fread(list, sizeof(Comp), cnt, f);
  fclose(f);
  return 1;
 
}
Когда файл пустой и данные вводятся с клавиатуры все прекрасно работает, но если файл имеет записи, то ошибка прерывает программу.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru