摘要:
发现程序2编译之后所得的.exe文件比程序1的要大得多。发现在程序1.asm中ar的定义如下: _BSS SEGMENT ?ar@@3PAHA DD 0493e0H DUP (?) ; ar _BSS ENDS 而在程序2.asm中,ar被定义为: _DATA SEGMENT ?ar@@3PAHA DD 01H ; ar DD 02H DD 03H ORG $+1199988 _DATA ENDS区别很明显,一个位于.bss段,而另一个位于.data段,两者的区别在于:全局的未初始化变量存在于.bss段中,具体体现为一个占位符;全局的已初始化变量存于.data段中;而函数内的自... 阅读全文
摘要:
C/C++内存与运行时深入研究 ----------------------------------------------------------------------------------- (一)整数符号的陷阱 (二)浮点数的本质 (三)堆栈的内存管理结构 (四)符号解析 (五)对齐和总线错误 (六)函数指针 (七)虚函数的实现机理 (八)引用的实现机理 (九)虚拟继承对象的内存结构 (十)混合编程时的初始化顺序 (十一)数组和指针的异同 (十二)const限定的传递性 (十三)数据类型的限定性检查 (十四)使用STL时的类型限制 (十五)迭代器自身的类... 阅读全文