标签:参考 http dig 标准 wiki code 未使用 and float
仔细看了看wiki
当初因为iso646的标准,部分国家打不出# ~ ^ 之类的字符,所以使用??加一个字符替代。
Trigraph | Equivalent |
---|---|
??= |
# |
??/ |
\ |
??‘ |
^ |
??( |
[ |
??) |
] |
??! |
| |
??< |
{ |
??> |
} |
??- |
~ |
后来在c99加入了digraphs
Digraph | Equivalent |
---|---|
<: |
[ |
:> |
] |
<% |
{ |
%> |
} |
%: |
# |
然后目前,gcc编译trigraphs 要使用-trigraphs 且未使用会警告。
如果-ansi 会默认加上-trigraphs。
c++或者c中的iso646.h还支持这个
Token | Equivalent |
---|---|
%:%: |
## |
compl |
~ |
not |
! |
bitand |
& |
bitor |
| |
and |
&& |
or |
|| |
xor |
^ |
and_eq |
&= |
or_eq |
|= |
xor_eq |
^= |
not_eq |
!= |
所以当初lez大佬发现的那个东西是有名字的。。。
在c++11,trigraphs被建议不使用,c++17中,被弃用了。
参考:https://en.wikipedia.org/wiki/Digraphs_and_trigraphs
标签:参考 http dig 标准 wiki code 未使用 and float
原文地址:http://www.cnblogs.com/be-the-std/p/7728029.html