三合字母

Omk*_*ant 2 c trigraphs

c99 standard  5.2.1.1 Trigraph sequences
Run Code Online (Sandbox Code Playgroud)

2 示例以下源代码行

printf("Eh???/n");
Run Code Online (Sandbox Code Playgroud)

变成(在替换三字母序列之后??/)

printf("Eh?\n");
Run Code Online (Sandbox Code Playgroud)

据说它将替换三合字母序列,但事实并非如此。

正在打印 "Eh???/n"

我错过了什么吗?

P.P*_*.P. 5

在 gcc 中默认禁用三字符。如果您使用的是 gcc,则编译-trigraphs以启用三字符:

gcc -trigraphs source.c
Run Code Online (Sandbox Code Playgroud)