4
msvcでは、gccの "__builtin_return_address"に相当するものはありますか?'__builtin_return_address'に相当するMSVC
私は、1レベル深い呼び出し関数のアドレスを探しています。 MSDNから
msvcでは、gccの "__builtin_return_address"に相当するものはありますか?'__builtin_return_address'に相当するMSVC
私は、1レベル深い呼び出し関数のアドレスを探しています。 MSDNから
:
_ReturnAddressの固有の発信者
に制御が戻った後 を実行する 関数呼び出しの命令の アドレスを提供一部のプラットフォームでは、結果がテールフォールディングのために誤解を招く可能性があることに注意してください。コンパイラはyo内部機能が2レベル深く戻ります。これは、一般的に、このようなコードで発生する可能性があります
int DoSomething()
{
return DoSomethingSpecial();
}
DoSomethingSpecialがdoSomethingのの呼び出し元に直接返すようコンパイラがコードを生成することができます。
また、返信先のアドレスは信頼できるものではありません。セキュリティの決定を下すには、hereを参照してください。