在汇编中使用printf没什么意义,这里只说明一写问题,printf 再 __asm中的使用有点复杂.先看看下面代码:
void main()
{
int t = 10;
char *szformat = "t = %d/n";
printf(szformat, t);
}
===
输出
t = 10
Press any key to continue
调试得到的汇编代码:
19: void main()
20: {
0040B770 push ebp
0040B771 mov ebp,esp
0040B773 sub esp,48h
0040B776 push ebx
0040B777 push esi
0040B778 push edi
0040B779 lea edi,[ebp-48h]
0040B77C mov ecx,12h
0040B781 mov eax,0CCCCCCCCh
0040B786 rep stos dword ptr [edi]
21: int t = 10;
0040B788 mov dword ptr [ebp-4],0Ah
22: char *szformat = "t = %d/n";
0040B78F mov dword ptr [ebp-8],offset string "%d/n" (0041ff6c)
23: printf(szformat, t);
0040B796 mov