堆栈功能的帧大小

时间:2016-02-05 00:23:15

标签: c assembly stack computer-science

简单问题:有没有办法确定函数的堆栈大小?

int stackframe_size(int run) {
    int i ;
    if(!run) {
        return ((int)(&i) - stackframe_size(++run));

        }
        return (int)(&i);

    }

int main() {
    int x, y;
    double d;
    char c;

    int a = 4;
    int b = 5;
    int we = 6;
    int e = 123123;
    int hmm = 34453;
    int lol = 45;
    int asd = 23;
    x = 1;
    y = g(x);
    d = f(x, y, x-y);
    c = 'a';
    printf("%d", stackframe_size(0));
}

我正在运行我从另一个线程获得的函数来查找调用堆栈大小,它似乎总是返回48 ...是否有其他方法可以找到或者这是唯一的方法?

0 个答案:

没有答案