Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с изображениями https://www.cyberforum.ru/ cpp/ thread227442.html
Добрый день! Есть тут знающие как работать с изображениями (Масштабировать, скопировать/вставить, обрезать). А то что-то не могу ни как разобраться. Может книги какие кто знает :)
C++ Программа завершения процесса
Возможно ли написать программу, чтобы завершить процесс mail.ru agenta? Да, и если возможно, из другого пк. (через сетку). Если есть такая, выложите пожалуйста, очень надо.
C++ Не получается разрешить доступ к интернету
Не получается разрешить доступ к интернету через LAN другому компьютеру
C++ Irrlicht Доброго времени суток. Проблема состоит в том, что при загрузке движка Irrlicht все в порядке, а при прописывании программе через какой путь ей надо пройти, чтобы обратиться к классу, показывает,... https://www.cyberforum.ru/ cpp/ thread226685.html
C++ Получить индекс типа в mpl::map`е https://www.cyberforum.ru/ cpp/ thread226098.html
всем привет. есть mpl карта типов(key -> value). нужно получить индекс типа имея только ключ. где-то накосячил. но непойму где. #include <iostream> #include <boost/mpl/distance.hpp>...
Отвечает за стиль программы - Code Blocks или mingw? C++
Здравствуйте! Столкнулся с такой проблемой - при компиляции программ в Code Blocks с помощью mingw стиль получается как у классического Windows (к примеру, некрасивые кнопки и меню) в любом случае....
C++ Таинственный макрос
Здравствуйте, в исходники nginx (веб-сервер) есть такой макрос: int ngx_cdecl main(int argc, char *const *argv) { //...некий код... } Он встречается еще и в других функциях. Само его...
C++ Люди, кто может помочь в написании проги Составить прогу на С++, которая кодирует текст, алгоритмом Лемпела-Зива (Не LZW). Выводится в текствой файл двоичный код каждого символа. Выводится CRC-код текстового файла.... https://www.cyberforum.ru/ cpp/ thread223728.html
C++ Прямое обращение к памяти https://www.cyberforum.ru/ cpp/ thread223680.html
Доброго всем времени суток. Товарищи, помогите пожалуйста найти литературу для компилятора DJGPP. Точнее для особенностей данного компилятора. В частности интересует прямое обращение к ОЗУ. Насколько...
C++ Проверка ввода Помогите пожалуйста с проверкой. Нужно, чтобы при вводе массива x, если предыдущее значение больше вводимого, пользователю выдало сообщение об ошибке и он ввел правильное значение (которое больше... https://www.cyberforum.ru/ cpp/ thread223435.html
Модератор
Эксперт Windows
7543 / 3263 / 232
Регистрация: 25.10.2010
Сообщений: 13,325
18.01.2011, 01:12  [ТС] 0

Про CRC32

18.01.2011, 01:12. Просмотров 6133. Ответов 2
Метки (Все метки)

Ответ

Прога откорректирована
Канает в Builder C++6 на все 100%, в MVisual выдает ошибку, ну а в Borland 3.1. компильните, увидите сами, хотя в Borland 3.1. вроде бы все .exe 16-бит(CRC16) или я ошибаюсь?!
Пример расчёта Crc32 в Builder C++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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*Программа расчёта Crc32 для файлов.txt*/
#include <stdio.h>//необходимо для printf
#include <conio.h>//необходимо для getch
#include <string.h>//необходимо для strlen
#define FNAME "text.txt"//макрос(метка)
/*Описываем функцию расчёта Crc32
с применением полинома EDB88320UL=
x^32 + x^26 + x^23 + x^22 + x^16 + x^12 + x^11
+ x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x + 1
*/
unsigned long Crc32(unsigned char *buf, unsigned long len)
{
unsigned long crc_table[256];
unsigned long crc;
for (int i = 0; i < 256; i++)
{
crc = i;
for (int j = 0; j < 8; j++)
crc = crc & 1 ? (crc >> 1) ^ 0xEDB88320UL : crc >> 1;
crc_table[i] = crc;
};
crc = 0xFFFFFFFFUL;
while (len--)
crc = crc_table[(crc ^ *buf++) & 0xFF] ^ (crc >> 8);
return crc ^ 0xFFFFFFFFUL; //конец функции
};
 
//открываем файл для обработки
int main()
{
char buf[4096];
int len;
unsigned long Crc32(unsigned char *buf, unsigned long len);
FILE *f = fopen("text.txt", "rt");//Открыли файл для чтения
if ((f = fopen("text.txt", "rt"))==NULL)//Если файл невозможно открыть,
{
printf ("Error = Nevozmozchno otcrjt' fail");//то выдаём сообщение
getch();
return 0;//и выходим из программы
}
fgets(buf, sizeof(buf), f);
len = strlen(buf);
 
//Вывод Crc32
printf("CRC-32 = %p\n", Crc32(buf,len));//Тут MVisual выдает ошибку
fclose(f);//Файл закрыли
getch();  //задержка программы
return 0;
}


Вернуться к обсуждению:
Про CRC32
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.01.2011, 01:12
Готовые ответы и решения:

Crc32 файла
Добрый день! Я писала программку для вычисления crc32 файла с таблицей значений, но преподу она не...

Crc32 библиотека
Здравствуйте! =) Подскажите, пожалуйста, знатоки! Нужно посчитать crc32 файла. Нашла...

Вычислительная сложность CRC32
Какова вычислительная сложность алгоритма CRC32? N^2 или NlogN или еще что-то?

Рекурсивный алгоритм crc32
Доброе утро! Может кто-нибудь поделиться алгоритмом для подсчёта контрольной суммы директории и...

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