2016-07-26 12 views
-2

%Idについて質問していますが、%ldではありません。「%Id」とはどういう意味ですか? (大文字のI、小文字のd)

誰もが「私は」を正確にやるんものを私に説明していただけます。もしあれば

Iを10進整数変換(idu)について出力は、 ロケールの代替出力数字を使用しています。 の例では、glibc 2.2.3以降、これはペルシア語("fa_IR")ロケールでアラビア数字の数字を示します。例として

:すなわち

printf("%Id",1); 

%d%Idの違いは何ですか?

誰でも簡単な言葉と簡単な例でそれを説明してください違いを述べることができますか?

+0

具体的な問題を明確にしたり、詳細を追加して必要なものを正確に強調してください。現在書かれているとおり、あなたが求めていることを正確に伝えるのは難しいです。この質問を明確にする方法については、How to Askページを参照してください。 – Olaf

+0

なぜ私は常に私の質問をd​​ownvotingしている私は同じ脳と思考の方法を持っていないことを理解しようとしている! –

+0

あなたは私が何をしているのか正確に説明しました。あなたがそのことを理解していない場合は、その説明のどの部分を理解していないのかを具体的に記述して、誰かがあなたの特定のギャップに対処できるようにしてください。 – kaylum

答えて

3

printfフォーマットオプションIは、数字のロケール表現を選択するglibC拡張です。これはC標準では定義されていないため、移植可能なコードでは使用しないでください。

ロケールがCライブラリによって適切に選択され、サポートされている場合は、printf("%Id", 1);を呼び出すと、アラビア語の数字の1を表すUnicodeコードポイントUをエンコードする文字列が生成されることがあります。

printf("%d", 1);は常に1、ナンバーワンの西部の表現を出力し、逆にhttp://www.fileformat.info/info/unicode/char/0661/index.htm

を参照してください。 ローマ数字Iとは対照的に、

事項はさらに混乱させるために、1%IdIとは無関係な...、アラビア数字と呼ばれています。

関連する問題