|
|
|
Канал творчества »
Творческие посиделки: «Вопросы и предложения по программированию на Си» |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 2(12) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
Добрый день, уважаемые)
Тема для выкладывания готовых и объясненных материалов!!!!
Выкладываем не учебник по Си а интересные хитромудрые вариации в которых можно запутаться и вообще было бы интересно поизучать - как этот человек к этому пришел и т.п.
Просто интересно. Музыку мы выкладываем? да. слушаем? да. Почему вот никому не интересен творческий процесс самого программирования?
Я бы посмотрел чем народ занимается, по крайней мере те кусочки кода которые скажем неоднозначны чтоли, интересны))
Не секретные материалы:
1. Копировать побайтно exe-файл. Архивировать файлы. Непечатаемые символы.
Для чего это мне нужно было? как то мне пришло в голову - а давай ка попробуем(сам с собой) заархивировать любой файл. Просто подобрать комбинации - каждой паре возможных символов подобрать по одному символу. тем самым "ужав" файл в 2 раза.
Возникла проблема - просто так операция копирования fopenc() fputc() не работала. Для этого я поискал у кого спросить, потому как гпрс и гуглить нету дури)) (дурь=деньги)
вот исходник кода который РАБОТАЕТ:
Среда: Dev-Cpp
Ось: WinXP
Cкрытый текст (кликните здесь для просмотра)
#include <windows.h>
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
///переменные
long a,b[7],c=0, j;
char writebyteWR;
int i;
// функции
int main ()
{
FILE *readbyte,*writebyte;
readbyte= fopen("data.txt","r+b");
writebyte= fopen("data_lared.lar","w+b");
while(j!=1)
{
a=fgetc(readbyte);
if(a==EOF) {cout << "!!!!!!" << endl;j=1;}
fputc(a,writebyte);
i++;
cout << i << endl;
}
asm("main1:");
cout << "Hello World!" << endl;
cout << "Press ENTER to continue..." << endl;
getchar();
}
|
"r+b" - бинарное копирование, побайтное, в общем копирует и читает системные символы. Если нужно распотрашить ехе файл - то нам этим путем) Ну или например Jpeg попробовать сжать - тоже сюда же)
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (14:47 31-03-2009), всего редактировалось 6 раз(а) |
|
|
RenderG
2296 EGP
                  Рейтинг канала: 6(302) Репутация: 243 Сообщения: 20534 Откуда: [OEG] Зарегистрирован: 18.09.2006
 |
|
А если код запускать поверх много раз - то в конце у тебя останется один байт?
_________________ No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy
Последний раз редактировалось: RenderG (16:22 25-03-2009), всего редактировалось 1 раз |
|
|
Endeavour
1015 EGP
       Рейтинг канала: 5(227) Репутация: 105 Сообщения: 7041 Откуда: guess Зарегистрирован: 26.05.2005
 |
|
Поищи в продаже диск MSDN Library (описание студии, стандартной библиотеки, винапи), или хотя бы просто диск с ВинСДК (толкьо винапи). Так вслепую тыкаться в 100% документированных функциях - изврат...
БулерМэн : |
asm("main1:");
|
Это чего?
|
|
|
Guest
2075 EGP
              Рейтинг канала: 5(163) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004
 |
|
Это типа "ассемблер начинаеццо тута".
БулерМэн : |
Просто подобрать комбинации - каждой паре возможных символов подобрать по одному символу.
|
Кх-м...
Каждой...
Паре...
Возможных...
ACSII-таблица.
255 символов.
Минус 0F управляющих = 239 символов.
Количество пар, включая повтор одного символа = 57 121.
Весёлый такой словарик получается... Причём его самого ещё придётся кодировать вне ASCII.
Какая-то неправильная свёртка.
_________________ Трещит земля как пустой орех
Как щепка трещит броня |
|
|
Endeavour
1015 EGP
       Рейтинг канала: 5(227) Репутация: 105 Сообщения: 7041 Откуда: guess Зарегистрирован: 26.05.2005
 |
|
Guest : |
Это типа "ассемблер начинаеццо тута".
|
Странная форма. А зачем оно там? И msvs ругается.
Последний раз редактировалось: Endeavour (18:22 25-03-2009), всего редактировалось 1 раз |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 2(12) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
RenderG : |
А если код запускать поверх много раз - то в конце у тебя останется один байт?
|
не понял юмора)))
оно самое)) забыл убрать))нужно зачем то был джамп из функции в конец программы на асме..
Guest : |
Причём его самого ещё придётся кодировать вне ASCII
|
на этот счет есть более свежие предложения)
Нечто "слоеный пирог" с 239 символов на слое))
добавлено спустя 27 минут:
OutCast : |
Странная форма.
|
компилятор ибо Dev-cpp
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (11:55 26-03-2009), всего редактировалось 1 раз |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 2(12) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
спойлер
Cкрытый текст (кликните здесь для просмотра)
|
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (18:53 26-03-2009), всего редактировалось 1 раз |
|
|
Guest
2075 EGP
              Рейтинг канала: 5(163) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004
 |
|
Что такое "слой"?
Что такое "уровень"?
Что значит "кодирование РАЗНОЙ информации"?
Что значит "раскидываем информацию по слоям"?
Что значит "однотипно зашифрованной"?
Какие комбинации (комбинации чего) являются "предсказуемыми" и чем они предсказываются?
Насколько я понял, ты выполняешь 222 сжатия различными алгоритмами? И чего ты этим добиваешься, а главное - как ты намерен инвертировать процесс?
Я не говорю пока про требования к оперативной памяти, дисковому пространству, быстродействию и прозрачности.
_________________ Трещит земля как пустой орех
Как щепка трещит броня |
|
|
Hahahoj
860 EGP
      Рейтинг канала: 3(30) Репутация: 177 Сообщения: 2726
Зарегистрирован: 25.05.2004
 |
|
Guest : |
И чего ты этим добиваешься, а главное - как ты намерен инвертировать процесс?
|
Всегда можно списать на сжатие с потерями. Извиняйте, второй байт потерян.
Напоминает изобретение колеса. Проще взять готовые фриварные библиотеки. Или посмотреть алгоритм сжатия .pcx файлов, там проработан примерно такой принцип.
|
|
|
БулерМэн
420 EGP
   Рейтинг канала: 2(12) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
Guest : |
Что такое "слой"?
Что такое "уровень"?
Что значит "кодирование РАЗНОЙ информации"?
Что значит "раскидываем информацию по слоям"?
Что значит "однотипно зашифрованной"?
Какие комбинации (комбинации чего) являются "предсказуемыми" и чем они предсказываются?
|
А тебе оно надо?
БулерМэн : |
хотел бы выкладывать свои находки по программингу тут
|
читать несколько раз, я не хочу выкладывать то, что и так считается уже открытым. Это мой интерес, и не нужно меня убеждать, что я делаю велосипед.
Если кто хочет я обсужу это с интерисующимися в привате, по джаберу, по телефону. Тема не для этого делалась.
Тема для выкладывания готовых и объясненных материалов.
Материал по архивации сдесь есть? Где готовые фриварные библиотеки тут? зачем мне марочить голову и забивать личными мнениями?? Постите материал по теме, зачтется плюсиком в профиле.
добавлено спустя 6 минут:
я никого не призываю делатьто же самое в данной теме, да пусть она сгниет в лете, важно что она останется и по поиску я смогу ее найти когда-нибудь. Для себя же.
_________________ Сосиска в хлебе
Последний раз редактировалось: БулерМэн (18:58 26-03-2009), всего редактировалось 1 раз |
|
|
Guest
2075 EGP
              Рейтинг канала: 5(163) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004
 |
|
БулерМэн : |
Тема для выкладывания готовых и объясненных материалов.
|
Ну тогда гони скомпиленное приложение Потому что из объяснений ничего не понятно.
_________________ Трещит земля как пустой орех
Как щепка трещит броня |
|
|
БулерМэн
420 EGP
   Рейтинг канала: 2(12) Репутация: 68 Сообщения: 1580 Откуда: Гороховец Зарегистрирован: 07.02.2006
 |
|
Guest : |
Ну тогда гони скомпиленное приложение
|
гоню гоню))
_________________ Сосиска в хлебе |
|
|
Hahahoj
860 EGP
      Рейтинг канала: 3(30) Репутация: 177 Сообщения: 2726
Зарегистрирован: 25.05.2004
 |
|
БулерМэн : |
читать несколько раз, я не хочу выкладывать то, что и так считается уже открытым. Это мой интерес, и не нужно меня убеждать, что я делаю велосипед.
|
Меня читать один раз. И с него всё понятно:
Первый пост темы - иллюстрация работы с файлами в ANSI C и эта информация является закрытой в 1% обучающих книг. Еще 1% книг не рассматривает бинарное копирование файлов.
БулерМэн : |
Тема не для этого делалась.
|
Если для выкладывания шаблонов - бог в помощь. Но пока в ней никак не секретная и даже не трудно-находимая информация.
БулерМэн : |
Тема для выкладывания готовых и объясненных материалов.
Материал по архивации сдесь есть? Где готовые фриварные библиотеки тут?
|
Вопрос 1 - да. Цитата:
БулерМэн : |
Для чего это мне нужно было? как то мне пришло в голову - а давай ка попробуем(сам с собой) заархивировать любой файл. Просто подобрать комбинации - каждой паре возможных символов подобрать по одному символу. тем самым "ужав" файл в 2 раза.
|
Вопрос 2. Они не тут. Они там. Или там. Там. Или на худой конец там. Выбирай, отлаживай и выкладывай сюда с описанием. Будет здорово и много полезнее, чем стебать учебник по Сишке.
БулерМэн : |
зачем мне марочить голову и забивать личными мнениями??
|
Зачем тебе морочить нам голову я признаться не знаю.
БулерМэн : |
Постите материал по теме, зачтется плюсиком в профиле.
|
По какой теме и кому сдался твой плюсик? Тебе запостить учебник по си? или что-нибудь посложнее? Поскольку в суть темы не въехал так и не понял что ты хочешь, чтобы тебе постили.
БулерМэн : |
я никого не призываю делатьто же самое в данной теме, да пусть она сгниет в лете, важно что она останется и по поиску я смогу ее найти когда-нибудь. Для себя же.
|
Плюс одна тема в копилку?
Может много проще объяснить нормально чего ты всё-таки хотел? Желательно в первом посте.
Последний раз редактировалось: Hahahoj (17:19 27-03-2009), всего редактировалось 1 раз |
|
|
Medikus
835 EGP
   Рейтинг канала: 4(76) Репутация: 207 Сообщения: 2612 Откуда: Терь Москва :) Зарегистрирован: 17.08.2001
 |
|
Hahahoj : |
Может много проще объяснить нормально чего ты всё-таки хотел?
|
Барабан, красный галстук, как у Хитмана, щенка бульдога и въехать в Рай на белом чОрном Ахиллесе...
Сможешь сделать???
_________________ Самая распространенная игра человечества - "в ящик", хоть по-разу но сыграет каждый...
Последний раз редактировалось: Medikus (01:45 28-03-2009), всего редактировалось 2 раз(а) Последний раз редактировалось: AHILLES (00:38 28-03-2009), всего редактировалось 1 раз |
|
|
Hahahoj
860 EGP
      Рейтинг канала: 3(30) Репутация: 177 Сообщения: 2726
Зарегистрирован: 25.05.2004
 |
|
if
Цитата: |
Барабан, красный галстук, как у Хитмана, щенка бульдога и въехать в Рай на белом чОрном Ахилессе...
Сможешь сделать???
|
then
//Трахтибидох тахх тах
Последний раз редактировалось: Hahahoj (12:42 28-03-2009), всего редактировалось 3 раз(а) Последний раз редактировалось: AHILLES (12:04 28-03-2009), всего редактировалось 1 раз |
|
|
Medikus
835 EGP
   Рейтинг канала: 4(76) Репутация: 207 Сообщения: 2612 Откуда: Терь Москва :) Зарегистрирован: 17.08.2001
 |
|
Картинка не кажет.... чего-то напутал...
И насколько я не помню, но "ИФ" это условие... "Зен" = значит...
Почему тогда запихнул вопрос посередине???
_________________ Самая распространенная игра человечества - "в ящик", хоть по-разу но сыграет каждый... |
|
|
Hahahoj
860 EGP
      Рейтинг канала: 3(30) Репутация: 177 Сообщения: 2726
Зарегистрирован: 25.05.2004
 |
|
Ничего не напутал. Картинка под катом. Качай и смотри хытрым секретным образом (простой скачкой файла)
|
|
|
Medikus
835 EGP
   Рейтинг канала: 4(76) Репутация: 207 Сообщения: 2612 Откуда: Терь Москва :) Зарегистрирован: 17.08.2001
 |
|
Hahahoj : |
Качай и смотри хытрым секретным образом (простой скачкой файла)
|
Супир
Если Ахиллесыч это увидит - нам хана
_________________ Самая распространенная игра человечества - "в ящик", хоть по-разу но сыграет каждый... |
|
|
AHILLES
1780 EGP
        Рейтинг канала: 5(192) Репутация: 377 Сообщения: 3807 Откуда: Москва Зарегистрирован: 24.06.2005
 |
|
Илья, ты уж и так себе архивацию заработал по 2.16, 2.10 и 2.11! Я не БулерМэн - не exe-файлы потрошу.
Но раз уж вы тут с Хахом занимаетесь... кхм, п.1.1. - так и быть, это прощает вам все.
Зы: Хах, а это ты там себя, бьющего в барабаны, пририсовал?!
_________________ Сила и Честь
Последний раз редактировалось: AHILLES (13:25 28-03-2009), всего редактировалось 1 раз |
|
|
Medikus
835 EGP
   Рейтинг канала: 4(76) Репутация: 207 Сообщения: 2612 Откуда: Терь Москва :) Зарегистрирован: 17.08.2001
 |
|
AHILLES : |
Илья, ты уж и так себе архивацию заработал по 2.16, 2.10 и 2.11!
|
Cкрытый текст (кликните здесь для просмотра)
в привате напишу если не забуду
|
Дима, я все под спойлер спрятал А то еще 2.4 повесишь
Тогда я на тебя Наташку натравлю
Бедная Наташа! Огромный ей привет и респект от меня - вот такой: За то что выдерживает такого оболтуса, как ты. А.
_________________ Самая распространенная игра человечества - "в ящик", хоть по-разу но сыграет каждый...
Последний раз редактировалось: AHILLES (16:46 28-03-2009), всего редактировалось 2 раз(а) |
|
|
|
|
|
Канал творчества ->
Творческие посиделки: «Вопросы и предложения по программированию на Си» |
|