Cの標準では、コンパイラはasciiとしてエンコードされていないファイルを処理できることを要求していますか?特に、utf-8ファイルが標準に準拠しているかどうかは疑問です。前の質問に対する回答はC89、C99、C11の間で異なりますか?CのUnicode文字
CソースファイルでASCII以外の文字を使用することは合法であると仮定しますが、その使用法は合法ですか?
私はいくつかの明確なユースケースと考えることができます:
- ここではマクロ名以内識別子
- 内の文字列
- 内のコメント
内のすべてを示す例です。 4:
#ifdef PRINT_©
// Print out the © notice
cont char my©Notice[] = "This program is © 2016 ACME INC";
puts(my©Notice);
#endif
C言語で上記の用途に非ASCII文字を使用できる場合は、使用できるコードポイントに制限はありますか?
これはCの標準に関する質問です。私は既に、Unicode文字を識別子とマクロに入れるとコードを使いにくくすることに気付きました。