Вызов: Прежде чем лезть под кат, скомпилируйте в голове заголовок статьи, что он дает на выходе?
![image][1]
Когда я в очередной раз просматривал книгу «Expert C programming», я вдруг наткнулся на раздел «light relief» в международном конкурсе на самый запутанный код на Си ([IOCCC][2]). Это соревнование по написанию как можно более нечитабельного кода. То, что такие конкурсы устраиваются для Си, наверное, говорит что-что об этом языке. Мне хотелось увидеть работы участников этого соревнования. Не найдя никакой информации в интернете, я решил поискать их самостоятельно.
IOCCC был придуман Стивеном Борном, когда он решил использовать препроцессор Си и написать Unix shell как бы на языке Си, но больше похожем на язык Algol-68, с его явными окончаниями операторов, например:
if
...
fi
Он добился этого, сделав:
#define IF if(
#define THEN ){
#define ELSE } else {
#define FI ;}
Что позволило ему писать так:
IF *s2++ == 0
THEN return(0);
FI
[Читать дальше →][3]
[1]:
https://habrastorage.org/getpro/habr/post_images/313/607/582/3136075824da622da17f179baca6c787.jpg
[2]:
http://ioccc.org
[3]:
https://habrahabr.ru/post/313598/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut