我正在使用 VC++ 反汇编我编写的一个非常简单的程序:
#include <iostream>
using namespace std;
int main()
{
for(int i = 0; i < 11; i++)
{
cout << i << endl;
}
return 0;
}
我希望阐明 cout 的工作原理,但经过检查,生成的 ASM 指向外部源(我假设):
EXTRN __imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
有没有办法从上面的行中识别出 this 指向的具体位置以及如何访问它?即便如此,如何阅读上面的行?
最佳答案
您不必拆卸它。流的 MS 源是 Visual Studio 安装的一部分。参见:“C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\crt\src”
关于C++、ASM 和 cout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8136287/