Partilhar via


Usando símbolos C ou C++ em blocos __asm

Específico da Microsoft

Um __asm bloco pode referir-se a qualquer símbolo C ou C++ no âmbito onde o bloco aparece. (Os símbolos C e C++ são nomes de variáveis, nomes de funções e rótulos; ou seja, nomes que não são constantes simbólicas nem membros. Não é possível chamar funções membro de C++.)

Algumas restrições se aplicam ao uso de símbolos C e C++:

  • Cada instrução de linguagem assembly pode conter apenas um símbolo C ou C++. Vários símbolos podem aparecer na mesma instrução de montagem somente com expressões LENGTH,TYPE e SIZE .

  • As funções referenciadas num bloco __asm devem ser declaradas (prototipadas) antes no programa. Caso contrário, o compilador não pode distinguir entre nomes de função e rótulos no __asm bloco .

  • Um __asm bloco não pode usar símbolos C ou C++ com a mesma ortografia que as palavras reservadas do MASM (independentemente do caso). As palavras reservadas do MASM incluem nomes de instruções, como PUSH , e nomes de registro, como SI.

  • As tags de estrutura e de união não são reconhecidas nos blocos __asm.

END Específico da Microsoft

Ver também

Usando C ou C++ em blocos __asm