当前位置: 代码迷 >> 汇编语言 >> 一个嵌入汇编的小疑点 invoke printf的
  详细解决方案

一个嵌入汇编的小疑点 invoke printf的

热度:9103   发布时间:2013-02-26 00:00:00.0
一个嵌入汇编的小问题 invoke printf的
char   *p= "Hello   World!\n ";
int   main(int   argc,   char*   argv[])
{
_asm  
{

invoke   printf,offset   p
}
return   0;
}
为何编译时候,invoke   printf,offset   p会出现error   C2400:   inline   assembler   syntax   error   in   'opcode ';   found   'printf '的错误呢?
渴望大侠指点

------解决方案--------------------------------------------------------
怎么可以这样嵌入MASM的宏呢?直接call吧
------解决方案--------------------------------------------------------
invoke是MASM的宏, 不是C/C++里的东西
------解决方案--------------------------------------------------------
#include <stdio.h>
内联汇编不支持宏汇编
char *p= "Hello World!\n ";
int main(int argc, char* argv[])
{
_asm
{
push p
call printf
add esp,4
}
}
  相关解决方案