在 __asm 块中使用 C 或 C++ 符号
Microsoft 专用
__asm
块可以引用块显示范围内的任何 C 或 C++ 符号。 (C 和 C++ 符号是变量名、函数名和标签;即,不是符号常量或 enum
成员的名称。不能调用 C++ 成员函数。)
C 和 C++ 符号的使用有一些限制:
每个汇编语言语句只能包含一个 C 或 C++ 符号。 多个符号可以出现在只有 LENGTH、TYPE 和 SIZE 表达式的同一汇编指令中。
__asm
块中引用的函数必须在程序中及早声明(原型化)。 否则,编译器无法区分__asm
块中的函数名和标签。__asm
块不能使用与 MASM 保留字具有相同的拼写(无论大小写)的任何 C 或 C++ 符号。 MASM 保留字包括指令名(如 PUSH)和寄存器名(如 SI)。结构和联合标记在
__asm
块中无法识别。
结束 Microsoft 专用