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

Не работает eof(). о__О - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ функция,вопрос на счет возвращаемого значния http://www.cyberforum.ru/cpp-beginners/thread64824.html
у меня вопрос(название уже говорит про какой) если скажем у меня функция возвращает целыое число то функцию пишу с INT,а если у меня и целое число и тип чар,то что в этом случае написать
C++ Задержка экрана Какой командой задерживается окно программы, для того чтобы вылетал в окно эдитора после нажатия любой клавиши, или Enterа? http://www.cyberforum.ru/cpp-beginners/thread64816.html
поиск строки в текстовом файле C++
Здравствуйте!! кто-нибудь знает как это сделать Оо ? собственно надо реализовать метод поиска строки в текстовом файле с помощью конечного автомата
Сумма цифр элементов каждого столбца матрицы C++
Пожалуйста помогите написать двумерный массив с таким условием: Сумма цифр элементов каждого столбца матрицы
C++ Метод Шеннона фано http://www.cyberforum.ru/cpp-beginners/thread64779.html
Помогите пожалуста реализовать самый простой способ этого алгоритма сжатия на С/С++ Добавлено через 14 минут с задаными вероятностями a = 0.01 b=0.1 c=0.09 d=0.8
C++ Нужно написать прогу на С++ Помогите пожалуйста с написанием проги... Вот условие такое: Написать программу, которая получает случайное целое типа int, выводит его двоичное представление на экран, а дальше с помощью операций побитового сдвига изменяет порядок следования битов в числе на обратный (*ПРИМЕР* 11010011 ==> 11001011 *ПРИМЕР*) Кто хорошо умеет программировать на С++ жду от вас непременной помощи, за одно... подробнее

Показать сообщение отдельно
Max
0 / 0 / 0
Регистрация: 22.08.2009
Сообщений: 27
18.11.2009, 08:55     Не работает eof(). о__О
Добрый день. Вопрос по теме.
А что если eof==-1 определяется где-то посреди файла? Например картинки достаточно большие фиг дочитаешь до конца.
Код:

C
1
2
3
fr=fopen(file_name,"r");
 while (fread(&tmp,1,1,fr)!=0){
     fsize++;}
Такая же кстати фишка происходит, если код:

C
1
2
3
4
5
fr=fopen(file_name,"r");
if(fread(&tmp,1,1,fr)!=0)
 while (!feof(fr)){
         fread(&tmp,1,1,fr);
     fsize++;}
И вместо 24 кБ допустим, я получаю 52 байта. Т.е. fsize не 24576, а 52.
Почему так происходит? И можно ли это как-нить решить?
 
Текущее время: 11:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru