(ISO C, §5.2.1.1) The C compiler normally ignores trigraph characters. Many common character constants look like trigraph sequences, and this extension lets you use them without including escape characters.
If you must write source code that strictly adheres to the ISO standard, enable the Expand Trigraphs setting. When you enable this setting, be careful when initializing strings or multi-character constants that contain question marks.
char c = '????'; // ERROR: Trigraph sequence expands to '??^
char d = '\?\?\?\?'; // OK
The Expand Trigraphs setting corresponds to the pragma trigraphs, To check this setting, use __option (trigraphs). By default, this setting is disabled.
See also “trigraphs” and Checking Settings.