码迷,mamicode.com
首页 > 其他好文 > 详细

函数栈平衡跟踪

时间:2016-05-28 19:10:28      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

例子:

struct stu{
    char name[20];
    int age;
    char* addr;
};

int inCall (char c,int n,char* hi, stu stu1){
    int locInt = 0x1234;
    char* locStr = "here i am";
    printf("%c\t0x%x\t%s\t0x%x\t%s\n",c,n,hi,locInt,locStr);
    printf("%s\t%d\t%s\n",stu1.addr,stu1.age,stu1.name);
    return 20;
}

void main()
{
    stu stu1;
    memset(&stu1,0,sizeof(stu1));
    memcpy_s(stu1.name,strlen("ZhangSan"),"ZhangSan",strlen("ZhangSan"));
    stu1.age = 0x30;
    stu1.addr = "Beijing";

    char* hi = "how are you?";
    inCall(A,0x70,hi,stu1);
    getchar();
}

 

  1. main函数的执行过程:

技术分享

 栈空间:

技术分享

  2.inCall函数的执行过程和栈空间:

函数栈平衡跟踪

标签:

原文地址:http://www.cnblogs.com/xunbu7/p/5537941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!