trigraphs - унарные операторы c++ - Что делает оператор ??!??! в C?

остаток от деления c / c / operators

Я видел строку С,которая выглядела следующим образом:

!ErrorHasOccured() ??!??! HandleError();

Peter Olson



Answer #1

Следующая таблица,содержащая все триграфы,поможет определить альтернативные комбинации триграфов:

Trigraph   Replaces

??(        [
??)        ]
??<        {
??>        }
??/        \
??'        ^
??=        #
??!        |
??-        ~
void main(){ const char *s = "??!??!"; } 

и обработать его:

cpp -trigraphs trigr.c 

Вы получите консольный вывод

void main(){ const char *s = "||"; }