In the
C family of
programming languages, a trigraph is a sequence of three
characters, the first two of which are both
question marks, that represents a single character.The reason for their existence is that the basic character set of C is a subset of the
ASCII character set (nine of its characters lie outside the smaller
ISO 646 invariant character set). This can pose a problem for writing
source code if the
keyboard being used does not support any of these nine characters. The
ANSI C committee invented trigraphs as a way of entering source code using keyboards that supported any version of the ISO 646 character set. Non-ASCII ISO 646 character sets are not much used today, but trigraphs remain in the C99 standard.
See more at Wikipedia.org...