Programming Tools Guide
Chapter 3, C language compiler

Trigraph sequences

Trigraph sequences

Trigraph sequences are three-character sequences that are replaced by a corresponding single character in Translation Phase 1, as follows:

 ??=   #   ??(   [   ??<   {
 ??/   \   ??)   ]   ??>   }
 ??'   ^   ??!   |   ??-   ~
No other such sequences are recognized. The trigraph sequences provide a way to specify characters that are missing on some terminals, but that the C language uses.