Си
- ⚠Не путать с австрийской королевой Сиси.
| Другие системы издевательств и не очень |
|---|
| Ё □ ‽ ! @ # $ % ^ & ? * ( ) + − = ← |
| Tab Й Ц У К Е Н Г Ш Щ З Х Ъ Ї Ѣ ВВОД |
| Caps Lock Ф Ы Ы! І В А А! Ǽ П Р О Л Д Ж Э € Є ' |
| Shift ТЫ Я Ч С М И ИЛИ НЕ Т Ь Б Ю :K . Shift |
| Ctrl ÿ Alt ___________ Alt Del Ctrl |
Он, как попка, — «си» да «си»,
Ну а сам всё налегает
На селёдку иваси!
СИ (кит. 習近平) — Система Издевательств над Программистами. Она же святая сила Си. Применяется для Систематизирования, Издевательства и Программирования. Окончание аббревиатуры было опущено из соображений политкорректности. Основные единицы измерения — попугай, пол-литра, (*int((*int)(int[])))(int, int**) и (начиная с C++) int**((__stdcall std::priority_queue<int, std::vector<int>, std::greater<int> >::** const& myptr)(std::priority_queue<int, std::vector<int>, std::greater<int> >::size_type[], volatile const long unsigned long int *const*&)).
История создания С[править]
Система издевательств над программистами была создана самими программистами фирмы Bell Laboratories. Bell Laboratories занималась созданием колоколов. В 1950 году Bell Laboratories создала вычислительный центр для математизации процесса изготовления колоколов. В этом центре и родился С.
Предыстория (Язык A)[править]
В 1950—1955 годах группа программистов под руководством Айвена Беллоу (Ivan Belou) создала программы Bell Model (модель колокола) и Air Model (модель окружающей среды). Группа уже собиралась приступать к Ringer Model (модели звонаря), но тут разразился скандал: Беллоу был застигнут за игрой в Звездные Войны на рабочем месте и с позором уволен. Перед уходом Беллоу удалил все исходные тексты программ и с тех пор никто не смог их воссоздать, между тем как приложения нуждались в обновлении. Но об этом временно пришлось забыть.
Группе программистов было поручено создать Ringer Model (модель звонаря), которая управлялась бы человеком с клавиатуры компьютера. Для управления и был создан командный язык, получивший название — Язык A. Название язык получил в честь ноты «ля» (латинское обозначение «A»), которую издаёт камертон.
Язык B[править]
Модели нуждались в отладке, однако оказалось, что без Беллоу никто это сделать не мог.
Тогда руководство Bell Model приняло несколько судьбоносных решений:
- Расширить вычислительный центр
- Создать систему для изготовления заплаток на модели (patches)
- Никогда не увольнять талантливых программистов, даже если они играют в игры на рабочем месте.
В 1957 году группа программистов Bell Laboratories создала язык B, позволивший худо-бедно ставить заплатки. Язык был настолько плох, что никому и в голову не пришло бы использовать его вне фирмы. Он и с поставленными руководством фирмы задачами еле-еле справлялся. Однако никто не собирался его дорабатывать, так как все программисты до единого играли в Тетрис и Звездные Войны.
Язык C[править]
Игры тоже были плохие. В частности двум любителям Asteroids — Кену Томпсону и Деннису Ритчи — никак не удавалось победить Главного Пирата и долететь до Астероида Сокровищ, что, конечно же, объяснялось исключительно недостатками игры. Кен и Ден пытались пропатчить игру с помощью фирменного языка B, однако язык B не справлялся с этой задачей.
Тогда Томпсон и Ритчи приняли исторические решения:
- переставить игру на главный сервер
- создать язык C, который сможет пропатчить игрушку.
Так был создан язык Cи Исходный — Предтеч, Переплёт Книги Бэшей, Великий последователь Би и Юникс.
Главными особенностями языка С являются
- Возможность написать любую, даже саму сложную, программу одной строкой.
- Порождение любым компилятором предупреждений, количество которых превосходит число команд.
Так, например, стандартная программа «Превед Медвед»:
main() { printf("Ы?\n"); }
порождает 9 предупреждений на компиляторах ANSI C.
- Инструкция {P@$c@l mu$t di++e} позволяет снизить число предупреждений компилятора на треть и одновременно избавиться от возможной критической ошибки «Critical Error! Memory leak is absent!», если такая всё-таки возникла.
- Возможность создания функций из чисел путём приведения типов (т. н. «чёрная магия»):
if (cmd[1] == RESET) // если принятая команда RESET
{((void(*)(void))0)();} // что-то из чёрной магии
- Обязательное использование инструкции {%i++;&(#$)@}{%==;(@#)!=$;} возле каждого оператора во избежание критической ошибки «Critical Error! The buffer will not be overflowed!»
- Число ошибок в коде равно числу операторов.
Наиболее эффективной программой на языке Си (по версии Международной ФедяРации Какеров) является следующая:
main(){while(1)fork();}
Язык С±, Cи плюс минус, Си приплюснутый[править]
Создан программистом Бджарне Строуструпом после усовершенствования языка С под собственные нужды. В частности, по сравнению с С было сделано следующее:
- Автодобавление инструкции, вызывающей переполнение буфера.
- Автодобавление инструкции, вызывающей утечку памяти.
- Инструкция {P@$c@l mu$t di++e} заменена на class public:{(De|phi++)-- mu$t di++e}protected:{P@$c@l mu$t di++e} в связи с концепцией ООП.
- Инструкция {%i++;&(#$)@}{%==;(@#)!=$;} заменена на class public:{%i++;&(#$)@}protected:{%==;(@#)!=$;} в связи с концепцией ООП.
- Поддержка инструкции class public:{B|ue $creen 0f De@th}&{Bi++|| G@te$}=={f0rever}. Добавлена по просьбе Билла Гейтса для совместимости с Windows.
Си выходит в широкий мир[править]
С этого момента разработками программистов Bell Laboratories заинтересовались хакеры всего мира. Наёмные Хакеры Necrosoft, Beerland и других компаний украли разработки Bell Laboratories, довели их до ума и выпустили на международный рынок с новыми названиями.
Managed C++[править]
Используется исключительно менеджерами Necrosoft и включает средства удалённой отладки мозга индусских программистов. Ко всем достоинствам обычного C++ добавлена способность подвисать для сборки мусора (то есть конфиденциальной информации о вас, лицензионном статусе ваших программ и/или сексуальных предпочтениях вашего кота) и передачи собранного куда следует.
Сложение в языке Си[править]
#include <iostream>
#include <Windows.h>
int main()
{
char govno[] = "\x48\x83\xEC\x28\x48\x83\xE4\xF0\x48\x8D\x15\x66\x00\x00\x00"
"\x48\x8D\x0D\x52\x00\x00\x00\xE8\x9E\x00\x00\x00\x4C\x8B\xF8"
"\x48\x8D\x0D\x5D\x00\x00\x00\xFF\xD0\x48\x8D\x15\x5F\x00\x00"
"\x00\x48\x8D\x0D\x4D\x00\x00\x00\xE8\x7F\x00\x00\x00\x4D\x33"
"\xC9\x4C\x8D\x05\x61\x00\x00\x00\x48\x8D\x15\x4E\x00\x00\x00"
"\x48\x33\xC9\xFF\xD0\x48\x8D\x15\x56\x00\x00\x00\x48\x8D\x0D"
"\x0A\x00\x00\x00\xE8\x56\x00\x00\x00\x48\x33\xC9\xFF\xD0\x4B"
"\x45\x52\x4E\x45\x4C\x33\x32\x2E\x44\x4C\x4C\x00\x4C\x6F\x61"
"\x64\x4C\x69\x62\x72\x61\x72\x79\x41\x00\x55\x53\x45\x52\x33"
"\x32\x2E\x44\x4C\x4C\x00\x4D\x65\x73\x73\x61\x67\x65\x42\x6F"
"\x78\x41\x00\x48\x65\x6C\x6C\x6F\x20\x77\x6F\x72\x6C\x64\x00"
"\x4D\x65\x73\x73\x61\x67\x65\x00\x45\x78\x69\x74\x50\x72\x6F"
"\x63\x65\x73\x73\x00\x48\x83\xEC\x28\x65\x4C\x8B\x04\x25\x60"
"\x00\x00\x00\x4D\x8B\x40\x18\x4D\x8D\x60\x10\x4D\x8B\x04\x24"
"\xFC\x49\x8B\x78\x60\x48\x8B\xF1\xAC\x84\xC0\x74\x26\x8A\x27"
"\x80\xFC\x61\x7C\x03\x80\xEC\x20\x3A\xE0\x75\x08\x48\xFF\xC7"
"\x48\xFF\xC7\xEB\xE5\x4D\x8B\x00\x4D\x3B\xC4\x75\xD6\x48\x33"
"\xC0\xE9\xA7\x00\x00\x00\x49\x8B\x58\x30\x44\x8B\x4B\x3C\x4C"
"\x03\xCB\x49\x81\xC1\x88\x00\x00\x00\x45\x8B\x29\x4D\x85\xED"
"\x75\x08\x48\x33\xC0\xE9\x85\x00\x00\x00\x4E\x8D\x04\x2B\x45"
"\x8B\x71\x04\x4D\x03\xF5\x41\x8B\x48\x18\x45\x8B\x50\x20\x4C"
"\x03\xD3\xFF\xC9\x4D\x8D\x0C\x8A\x41\x8B\x39\x48\x03\xFB\x48"
"\x8B\xF2\xA6\x75\x08\x8A\x06\x84\xC0\x74\x09\xEB\xF5\xE2\xE6"
"\x48\x33\xC0\xEB\x4E\x45\x8B\x48\x24\x4C\x03\xCB\x66\x41\x8B"
"\x0C\x49\x45\x8B\x48\x1C\x4C\x03\xCB\x41\x8B\x04\x89\x49\x3B"
"\xC5\x7C\x2F\x49\x3B\xC6\x73\x2A\x48\x8D\x34\x18\x48\x8D\x7C"
"\x24\x30\x4C\x8B\xE7\xA4\x80\x3E\x2E\x75\xFA\xA4\xC7\x07\x44"
"\x4C\x4C\x00\x49\x8B\xCC\x41\xFF\xD7\x49\x8B\xCC\x48\x8B\xD6"
"\xE9\x14\xFF\xFF\xFF\x48\x03\xC3\x48\x83\xC4\x28\xC3";
DWORD flOldProtect;
VirtualProtect(govno, sizeof(govno), PAGE_EXECUTE_READWRITE, &flOldProtect);
(*(void (*)())&govno)();
return 0;
}
С--[править]
Оригинальное название языка С++, используемое промоутерами для продажи того же самого под другим названием. Коварные промоутеры продукта посчитали, что переделав название на противоположное, они обманут наивных потребителей и добьются большей популярности. Что, собственно, у них и получилось.
C♯ (C#) «До диез», Си за решёточкой[править]
Язык создан в 2000 году наёмными хакерами Necrosoft, пребывающих в заключении за кражу исходников Bell Laboratories.
Язык C♯ молодой, но двунаправленный: борется одновременно за второе место по показателю ошибки/минута и за первое место с Windows ХРеново написано за обладание москами населения земли в рамках программы Некрософт - НЕТ!!!.
В 2001 году нотное издательство «Edition Peters» совместно с фирмой «Мелодия» подала на хакеров в суд за кражу бренда C♯. «C♯ — это до диез, а не хакерская штуковина!» — был озаглавлен их иск. Однако адвокатам наёмных хакеров удалось выиграть дело. Их доводы были таковы: во-первых, хакеры уже сидят за решёткой, во вторых, знак «♯» больше похож на тюремную решётку, чем на диез. Однако, на Necrosoft C♯ иначе чем «до диез» не называют, хотя для всего остального мира C♯ — это «си за решёткой».
Программистов, работающих с данным языком, принято называть лабухами.
C♭ (Cb), C♮ (Cq)[править]
Модификации C♯ (C#).
C♭ (До бемоль, Цэ флэт) имеет синтаксис C# и функциональность давно забытого языка B. Количество ошибок, выдаваемых компилятором, подвешивает даже самые мощные компьютеры, так что практически никому не удается создать на нем работающий код.
Основное назначение C♭ — издевательство тренировка учащихся. Если студенту удалось создать работающую программу «Hello, World!» на C♭, он получает оценку «удовлетворительно» и может перейти на следующий курс.
C♮ (До бекар) имеет синтаксис C# и дополнен библиотеками языка C. Если программист не в состоянии освоить сложнющий синтаксис языка C, он пользуется языком C♮. Количество выдаваемых компилятором ошибок при этом в 2-3 раза меньше, чем при использовании C (пока программист не попробует использовать библиотеки: в этом случае, число ошибок возрастает в 5-6 раз).
:Ͼ̤̤̈̈:, Си в пупырышках[править]
Неизвестен, не найден и не будет найден пока Necrosoft не наиграется с C♯.
Язык D[править]
А программисты Bell Laboratories создали язык D. Широкий мир его пока не видел, но из хорошо информированных источников известно, что по показателю ошибки/минута он занял почётное первое место в прошлом году, опередив С и С±. Однако Волшебники АлексАдрейкис и Брайт с ЦифровогоМарса проводят испытание магической второй версии D 2.0 которая обещает быть преемником С в новом столетии.
«СИ» большими буквами[править]
Существует мнение, активно разлагающее моск широкого круга узких безумных учёных, что С не есть СИ и СИ происходит от названия Съезд Интернационала марксистов-джедаистов. В начале они собрались, чтобы найти решение, о том, как выполнить 13-летку за 6,66 года, но один из представителей этого кружка Лень-Ын предложил следующую классификацию, которую почему-то назвали СИ. По этой системе T=δ*t. Для удобства приняли единицу измерения величины Т лет, а t — год, таким образом учёные подсчитали, что коэффициент δ=1,(951). Это число было засекречено и открыто только в 1951 г. уже после смерти г-на Лень-Ына.
См. также[править]
Unix |
|||||
|---|---|---|---|---|---|
| Линупс | Arch · Debian · Fedora · Gentoo · МСВС · Kubuntu · Убунту · Red Hat · Rinux · Slackware · SuSE | ||||
| Бзди | Бздя · Свободная Бздя · Сетевая Бздя · Открытая Бздя · ЗвероМух семейства Бздей · Настольная Бздя | ||||
| Софт и доки | Qt · GPL · man · Книга Бэшей · Vi | ||||
| Языки UNIX | C · C++ · PHP · Python · Shell · Олбанский · Haskell | ||||
| Люди и организации | Святой Патрик · Пингвины · Линупсоиды · ЛОР · Сотворение мира UNIX · Ричард Столлман · Суперюзверь · SCO · Команда Кусто · Линус Торвальдс | ||||
| |||||