6

私はセキュリティコースを受講していますが、Cプログラミング言語の理解が不足しているため、このコードを理解するのに問題があります。

printf  ("%08x.%08x.%08x.%08x|%s|");

このコードは、関数へのポインターが見つかるまでスタックに沿って移動する必要があると言われました。

これは出力の精度の指標にすぎないと思ったの.ですが、精度の指標があるので、この文脈でこれが何を意味するのかわかりませんか?

また、その|意味がわかりません。Cのドキュメントにもありません。

4

2 に答える 2

6

シンボルはフォーマット指定子の外にあるため、ここでは特別な意味はありません。単に文字通り出力されます。ただし、printfが期待するすべての引数を指定していないため、代わりにスタック上にある5つの値を出力することに注意してください。

于 2013-01-12T23:22:21.543 に答える
2

この文字列では。および| 文字が出力されるだけです。ドットは16進ストリングのセパレーターとして機能し、パイプはストリングを強調表示します。

ドットは、%記号の後、フォーマット指定子の前に表示される場合にのみ、歳差運動の指標と見なされます%4.2f

于 2013-01-12T23:23:28.873 に答える