C/C++
edisonlg
这个作者很懒,什么都没留下…
展开
-
C++编译链接过程
GCC的编译过程 总体来说,C/C++源代码要经过:预处理、编译、汇编和链接,四步才能变成相应平台下的可执行文件。 File: hw.c #include int main(int argc, char *argv[]) { printf("Hello World!\n"); return 0; }如果用gcc编译,只需要一个命令就可以生成可执行文件hw: gc原创 2011-12-18 15:45:32 · 14819 阅读 · 1 评论 -
函数调用栈
当程序进行函数调用的时候,系统会用到下面三种寄存器: 1.EIP:EIP寄存器里存储的是CPU下次要执行的指令的地址 2.ESP:ESP寄存器里始终存储的是栈顶地址 3.EBP:EBP寄存器里存储的是栈基址,是在函数调用之前,由ESP赋值给EBP的。 +| (栈底方向,高位地址) | | ......................| | .............原创 2012-04-28 17:22:32 · 1023 阅读 · 0 评论