私はchar*
、あらゆる場所での使用から、内部の Unicode 表現である UCS4 の使用にアプリケーションを移植しています。U"unicode literals"
文字列を定義するために C11 を使用します。文字列はchar32_t
、uint32_t
本質的に の配列に展開されます。
問題は、printf
-like 関数に適切に注釈を付けることにあります。「フォーマット」はもはやではないため、コンパイラはそれ以上のコンパイルを拒否し、フォーマットの代わりにchar*
満足できないと思います。char32_t *
char *
%s
私は stdlib ファミリーにまったく依存していない*printf
ので、フォーマットは純粋に私の実装によって行われます。
この属性を完全に無効にする以外に、これに対する正しい解決策は何ですか?