О наболевшем. Всеми любимый ресурс, без которого нынче сложно представить жизнь, не так давно радовал разнообразием лиц, которые просили поделиться с ними денежкой :) Сегодня я обращений не наблюдал, но встал один вопрос.
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 4009 |
2 | jiangly | 3823 |
3 | Benq | 3738 |
4 | Radewoosh | 3633 |
5 | jqdai0815 | 3620 |
6 | orzdevinwang | 3529 |
7 | ecnerwala | 3446 |
8 | Um_nik | 3396 |
9 | ksun48 | 3390 |
10 | gamegame | 3386 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 157 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
9 | nor | 153 |
О наболевшем. Всеми любимый ресурс, без которого нынче сложно представить жизнь, не так давно радовал разнообразием лиц, которые просили поделиться с ними денежкой :) Сегодня я обращений не наблюдал, но встал один вопрос.
Введение
Тема будет интересна всем, но познать её смогут только "счастливые" обладатели компилятора в популярном пакете dev-cpp для windows. На самом деле среду эту я не люблю и не пользуюсь никогда в силу жуткий глюков и тормозов, но как-то она мне попалась на первых парах изучения C и поэтому до сих пор используется мною как средство установки на комп консольных компилятора g++ и отладчика gdb. Быстро, удобно, бесплатно и всегда под рукой в интернете.
Сабдж
Собственно речь сейчас не идёт о прелестях этого старого приложения. Многие слышали о магии С++, многие её отведали, многие сваливают на неё ошибки в своем коде во время контестов. Ниже, представлен один из примеров подобного заклинания, о возможности компиляции которого даже приходится задуматься, не говоря уже о результате выполнения. Внимание! Уберите от экранов слабонервных, детей и паскальщиков:
char s[56] = "\xB8\1\0\0\0+\xD2\xB9\x1E\0\0\0Q\x8B\xC8\3\xC2\x8B\xD1PRh\x32 @\0\xA1" "\xD0P@\0\x83\xC0 P\xFF\x15\xE8P@\0\x83\xC4\bZXY\xE2\xDB\xC3%\x75\n"; int main(){ (((void(*)())(char*)s)()); return 0; }
Не думаю, что кто-то из ныне живущих людей на планете сможет с уверенностью сходу сказать, что этот код делает. Код без привычных #include. Состоящий буквально из одной строки кода. Он также врядли сделает что-то полезное на других компиляторах, но вот Dev-cpp и его GNU C++ 3.4.2 вполне согласен со всем написанным и готов его корректно исполнить.
Так что же он делает, задаётся вопросом нетерпеливый читатель? Попробуйте сначала предположить что, а потом проверьте у себя на машине. :)
Найдутся люди, которые вникнут в происходящее и даже смогут модифицировать текущий код. В любом случае пост по объяснению происходящего организовать могу. :)
Ссылки
Собственно код http://pastebin.com/w9pyjAtm
Название |
---|