スタック フレームのサイズを返すポータブル関数を C で (アセンブリなしで) 記述します。
int stackframe_size()
{
}
以下のように解決しようとしました - VS 2010 でコンパイルすると、この関数は 228 バイトを返します。その正確性を確認する方法はありますか?
int stackframe_size(int run)
{
int i ;
if(!run)
{
return ((int)(&i) - stackframe_size(++run));
}
return (int)(&i);
}
次のように呼び出されます。
int main()
{
printf("\nSize of stackframe_size() is: %d bytes",stackframe_size(0)) ;
return 0;
}