代码:
#include <stdio.h>
int main(void)
{
??< puts("Hello Folks!"); ??>
}
上面的程序,当使用 GCC 4.8.1 编译时-Wall
,-std=c11
会给出以下警告:
source_file.c: In function ‘main’:
source_file.c:8:5: warning: trigraph ??< converted to { [-Wtrigraphs]
??< puts("Hello Folks!"); ??>
^
source_file.c:8:30: warning: trigraph ??> converted to } [-Wtrigraphs]
但是当我将身体更改main
为:
<% puts("Hello Folks!"); %>
没有警告被抛出。
那么,为什么编译器在使用三合字母时会警告我,而在使用二合字母时却没有?