Digraph characters

You can represent unavailable characters in a source program by using a combination of two keystrokes that are called a digraph character. The preprocessor reads digraphs as tokens during the preprocessor phase.

The digraph characters are:

%: or %% # number sign
<: [ left bracket
:> ] right bracket
<% { left brace
%> } right brace
%:%: or %%%% ## preprocessor macro concatenation operator

You can create digraphs by using macro concatenation. XL C/C++ does not replace digraphs in string literals or in character literals. For example:

char *s = "<%%>"; // stays "<%%>"  

switch (c)  {       
		case '<%' : { /* ... */ } // stays '<%'       
		case '%>' : { /* ... */ } // stays '%>'
 }