dll使用静态方式调用的时候,堆栈的操作是放在程序里面了么?

dll使用静态方式调用的时候,堆栈的操作是放在程序里面了么?可是堆栈是动态的啊,这是怎么回事?

不管是静态调用还是动态调用,都是放在堆栈里。只是动态调用是在程序运行的时候通过loadlibrary加载dll,然后getprocaddress获得的函数指针。

呃呃,给你推荐一篇文章好了:http://www.cnblogs.com/oubo/archive/2011/12/06/2394631.html
另外有本《深入理解计算机系统》的书, 在程序链接那一块应该有你想要知道的内容。
虽然以上两个都是linux系统下程序组成和运行的方式,但是windows和它在这一点上应该相差不大

另外我记得, 堆栈段应该不在可执行文件中。和其他段(代码段Text Segment, 数据段Data Segment,BSS段)一样,它也有自己的大小,
但是这个大小:1.在linux系统下,是由系统命令决定的。 2在windows系统下,栈空间的大小存储在可执行文件中