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