Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2013, 18:53   #1
freekyn
Пользователь
 
Регистрация: 19.03.2013
Сообщений: 12
По умолчанию на каком языке написанно?

Код:
#include "utypes.h"
#include "gtbitio.h"
#include "sf.h"
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
 
typedef struct
{
    char algorithm[4];
    ulong file_size;
 
} file_stamp;
 
sffreq_type freq;
char filename_in[256];
char filename_out[256];
FILE *in, *out;
file_stamp fstamp;
ulong in_file_len, out_file_len;
ulong i_file_size = 0;
 
#define IN_BUFSIZE 4096
char input_buf[ IN_BUFSIZE ];
uint nread = 0, in_i = 0;
 
void read_stats ( FILE *in, sffreq_type *sffreq );
void get_name(void);
 
int main(void)
{
    unsigned int c = 0;
    char ch;
    time_t start, end;
    //clrscr();
    printf("\n\t Fano-arh.programm.");
    printf("\n\t what are you want?");
    printf("\n\t\t 1.Compress file");
    printf("\n\t\t 2.DeCompress file\n");
    printf("\n\t Enter your choise: ");
    ch = getc(stdin);   
    printf("\n");
    switch(ch)
    {
        case '1':
        {
            get_name();
            start=time(NULL);
            gIN=in;
            pOUT=out;
 
            init_put_buffer();
 
            fprintf(stderr, "\n--( A Static *Shannon-Fano* Coding Implementation )--\n");
            fprintf(stderr, "\nName of input file : %s", filename_in);
 
            fseek( in, 0, SEEK_END );
            in_file_len = ftell( in );
            fprintf(stderr, "\nLength of input file     = %15lu bytes", in_file_len );
 
            init_sffreq();
 
            fprintf(stderr, "\n\nAnalyzing file...");
            read_stats( in, sffreq );
            fprintf(stderr, "complete.");
 
            fprintf(stderr, "\nShannon-Fano Compressing...");
 
            init_sflist();
            create_symbol_list();
 
            top = create_node();
            top->next = list;
 
            create_shannon_fano_tree( top );
 
            rewind( pOUT );
            strcpy( fstamp.algorithm, "TSF" );
            fstamp.file_size = in_file_len;
            fwrite( &fstamp, sizeof(file_stamp), 1, out );
 
            fwrite( &sfcount, sizeof(unsigned int), 1, out );
 
            for ( c = 0; c < SF_MAX; c++ )
            {
                if ( sffreq[c].f > 0 )
                {
                    fwrite( &sffreq[c], sizeof(sffreq_type), 1, out );
                }
            }
 
            rewind(in);
            while( true )
            {
 
                nread = fread( input_buf, 1, IN_BUFSIZE, in );
                if ( nread == 0 ) break;
                in_i = 0;
 
 
                while( in_i < nread )
                {
                    c = (uchar) *(input_buf+in_i);
                    ++in_i;
 
                    sfcompress( sflist[c] );
                }
            }
            flush_put_buffer(); /* flush output buffer */
            fprintf(stderr, "complete.");
            out_file_len = ftell( out );
 
            end=time(NULL);
 
            fprintf(stderr, "\n\nName of output file: %s", filename_out);
            fprintf(stderr, "\nLength of input file     = %15lu bytes", in_file_len );
            fprintf(stderr, "\nLength of output file    = %15lu bytes", out_file_len );
            fprintf(stderr, "\nCompression ratio:         %15.2f %%\n",
            ( ((float) in_file_len - (float) out_file_len) / (float) in_file_len
            ) * (float) 100 );
            fprintf(stderr, "\nCompress time = %f Second", difftime(end,start));
 
            //halt_prog:
            getchar();
 
        }break;
        case '2':
        {
            get_name();
            start=time(NULL);
            gIN=in;
 
            fread( &fstamp, sizeof(file_stamp), 1, in );
 
            init_sffreq();
 
            fread( &sfcount, sizeof(int), 1, in );
 
            for ( c = 0; c < sfcount; c++ )
            {
                fread( &freq, sizeof(sffreq_type), 1, in );
                sffreq[ (unsigned char) freq.b ] = freq;
            }

.....
}
не могу найти библиотеку sf.h
и utypes.h
freekyn вне форума Ответить с цитированием
Старый 14.05.2013, 19:12   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Язык - C либо C-совместимый (C++, Objective-C, etc).

Цитата:
не могу найти библиотеку sf.h
и utypes.h
И? Все вопросы к тому, кто предоставил Вам этот код. Заголовочные файлы фигня, там же ещё соответствующие c-файлы либо объектные файлы должны быть.
Abstraction вне форума Ответить с цитированием
Старый 14.05.2013, 19:45   #3
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Вопросс по сабжу - на С++. Всё остальное от лукавого
Блиотека sf.h, не входит в станданртный набор С и С++, значит это какая-то собственная библиотека. Однозначно - к автору кода.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 14.05.2013 в 19:50.
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На каком языке... Hopan Помощь студентам 5 25.12.2012 19:23
SOS!!!!(на каком языке программа?)Нужно переделать программу,а я даже не знаю на каком она языке:eek::eek:,РЕБЯТА ПОМОГИ Нака Помощь студентам 10 19.11.2011 15:16
На каком языке написан код? FleshDro Помощь студентам 6 11.11.2009 06:46
на каком языке создаются такие программы ,какое СУБД и структура реализации БД,также на каком языке соста оля87 Помощь студентам 13 25.05.2009 18:08
[autorun] - на каком языке написан? Ivan_assm Помощь студентам 6 05.11.2007 09:06