%記号を次のように出力したい: "8%2F16"
この文字列を印刷するにはどうすればよいですか?
を使用して印刷しようとしている場合は、次printf
を使用する必要があります。%%
%
%
printf("8%%2F16");
%
はフォーマット文字列で特別な意味を持つエスケープ文字であるprintf
ため、印刷しようとする場合はそれ自体をエスケープする必要があります。
を使用する以外%%
に、次を使用することもできます%c
:
printf("8%c2F16\n", '%');
%c
文字列内の文字を適切にエスケープする方法を思い出せない場合のトリックは、優れたフォールバックです。(ただし、頭のてっぺんから、トリッキーなのは"
とだけ%
です。)
次のように、適切なエスケープ シーケンスを使用します。printf("%%");
(またはもちろん と同じputs("%");
ですが、フォーマットされた出力について話していると思います。)