>На Си Вы можете написать:
>for(;P("\n").R-;P("\ "))for(e=3DC;e-;P("_ "+(*u++/8)%2))P("| "+ (*u/4)%2);
>А если серьёзно - убивать тех, кто так пишет. Ну или отчислять. Угу. Старый аккордеон... Разбираем...
for( /* none */; P("\n").R-; P("\ ") )
for( e=3DC; e- ; P("_ " + (*u++/8)%2 ) )
P( "| " + (*u/4)%2 );
что видим. Начнем с того, что P("\n").R- это что-то явно не С-шное. Во-первыз R- - явная ошибка синтакиса, во вторых меня сильно терзают сомнения по поводу "." - сдается мне, как минимум тут должна быть "->". Вызов функции (или макроса, что в данном случае фиолетово) P не соотвеветствует семантике языка. Не складываются в C строки оператором "+" в записе P("_ " + (*u++/8)%2 ). А тем более не складываются строки с целым. Это можно сделать, но надо писать приведения к типам, а это улучшит читабельность кода. А присваивание "e=3DC"? или последующая операция "e-"? И вообще, напишите любую программу в одну строку (паскаль так тоже умеет) и получите еще большую ахинею. Так что боян он и есть боян. ЭТО не соберется ни одним компилятором. Разве что в три раза больше кода для препроцессора сверху повесить, но это уже совсем другая задача. Если ее ставить так, то любой бинарник можно в компилируемый код превратить...
А убивать надо тех, кто такие бояны писал - их стараниями на С так писать начали. А в С++ подобные записи вообще обыденность - за кодом смысла не видно.