2

重複の可能性:
CおよびC ++に有向グラフがあるのはなぜですか?
C ??!??!オペレーターはしますか?!

C ++には、とりわけ[]と{}の代替トークンがあります。

たとえば、次のコードがコンパイルされます。

%:include <stdio.h>
int main() <%
    printf("Hello World!");
}

しばらく考えていたのですが、適用性がわからなかったのですが、論理的な理由はありますか?

4

1 に答える 1

7

本当にCからの二日酔いです。すべての文字が使用できるわけではないCの実装がありました(角かっこがないEBCDICの一部のバリアントなど)。

C99の理論的根拠の文書、セクション5.2.1.1 Trigraph sequencesには次のように書かれています。

トリグラフシーケンスは、十分な数の非アルファベットグラフィックを提供しない文字セットでのCの実装を可能にするために、一部の文字の代替スペルとしてC89で導入されました。

Cで使用され#、ISO / IEC 646不変レパートリーに存在しないASCIIレパートリーの[文字は、、、、、、、、、、、および]{}\|~^

于 2012-10-02T04:22:57.757 に答える