为什么以下宏用1个内联汇编指令而不用2个内联汇编指令编译?

这段代码可以编译:

#define foo(x,output,ctx) {\
    __asm\
    {\
        mov eax, 0xCAFEBEE1\
    }\
}

但是此代码会产生错误:
#define foo(x,output,ctx) {\
    __asm\
    {\
        mov eax, 0xCAFEBEE1\
        add eax, 5\
    }\
}

最佳答案

尝试这个:

#define foo(x,output,ctx) {\
    __asm mov eax, 0xCAFEBEE1 \
    __asm add eax, 5\
}

关于visual-studio-2010 - 如何使用VC++在宏中添加多个内联汇编指令?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7026624/

10-11 22:38
查看更多