См. Стандарт C ++. Проект комитета № 2 находится в свободном доступе по адресу ftp: //ftp.research.att.com/dist/c++std/WP/CD2/body.pdf, хотя не авторитетный, устаревший и частично некорректный в некоторых местах. В частности, в разделе 2.5 Альтернативные токены определены следующие значения:
Alternative Primary
<% {
%> }
<: [
:> ]
%: #
%:%: ##
and &&
bitor |
or ||
xor ^
compl ~
bitand &
and_eq &=
or_eq |=
xor_eq ^=
not !
not_eq !=
Хотя, честно говоря, я никогда не видел, чтобы кто-нибудь из них когда-либо использовал, кроме and
, or
и not
, и даже тогда они редки. Обратите внимание, что они НЕ допустимы по умолчанию в простом C-коде, только в C ++. Если вы хотите использовать их в C, вам придется либо #define
сделать их самостоятельно в качестве макроса, либо #include
заголовок <iso646.h>
, который определяет все вышеперечисленное, кроме <%
>%
<:
:>
%:
%:%:
в качестве макросов (см. Раздел 7.9 стандарта C99).