/Zc:trigraphs (Trigraphs Substitution)


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at -Zc:trigraphs (Trigraphs Substitution).

When /Zc:trigraphs is specified, the compiler replaces a trigraph character sequence by using a corresponding punctuation character. To turn off trigraph substitution, specify /Zc:trigraphs-. By default, /Zc:trigraphs is off.


A trigraph consists of two consecutive question marks ("??") followed by a unique third character. For example, the compiler replaces the "??=" trigraph by using the '#' character. Use trigraphs in C source files that use a character set that does not contain convenient graphic representations for some punctuation characters.

For a list of C/C++ trigraphs, and an example that shows how to use trigraphs, see Trigraphs.

/Zc (Conformance)