2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Кодирование, С, EOF
Сообщение15.05.2015, 23:43 
Заслуженный участник


27/04/09
28128
Я вижу в коде выше в первой части fclose(in);, но закрытия out нет. Не нашёл, чтобы fopen ниже закрывал передаваемый ему поток, если тот уже открыт. Не сильно разбираясь в C, не знаю, к каким последствиям это может привести.

 Профиль  
                  
 
 Re: Кодирование, С, EOF
Сообщение15.05.2015, 23:45 


20/10/12
235
venco,
Visual Studio теперь может открыть закодированный файл. Это хороший знак, но EOF мне по-прежнему не отловить.

Код:
void HuffmanDecode(FILE *in, FILE *out)
{
   int size = 8;
   char *s = (char *)malloc(size);//нуу можно лучше
   char c;
   
   while((c = getc(in)) != EOF)
   {
      sPrintCharBits(c, s + size - 8);
      size += 8;
      s = (char *)realloc(s, size);
   }   
   s[size - 8] = 0;

   printf("\nGet: %s\n", s);
}

этот код мне выводит начальную часть исходной строки, но торжественно выходит из цикла на 1111 1111

все поменял на int c;
ну я и балбес, спасибо большое всем, кто помогал!

 Профиль  
                  
 
 Re: Кодирование, С, EOF
Сообщение16.05.2015, 00:56 
Заслуженный участник


27/04/09
28128
Так у вас всё-таки во входном, а не выходном был EOF, получается?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу Пред.  1, 2

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group