Compartilhar via


__ud2

Seção específica da Microsoft

Gera uma instrução indefinida.

Sintaxe

void __ud2();

Comentários

O processador gera uma exceção de opcode inválida quando você executa uma instrução indefinida.

A função __ud2 é equivalente à instrução do computador UD2. Para obter mais informações, pesquise o documento "Intel Architecture Software Developer's Manual, Volume 2: Instruction Set Reference" no site da Intel Corporation.

Requisitos

Intrinsic Arquitetura
__ud2 x86, x64

Arquivo de cabeçalho<intrin.h>

Fim da seção específica da Microsoft

Exemplo

O exemplo a seguir executa uma instrução indefinida que gera uma exceção. Em seguida, o manipulador de exceção altera o código de retorno de zero para um.

// __ud2_intrinsic.cpp
#include <stdio.h>
#include <intrin.h>
#include <excpt.h>
// compile with /EHa

int main() {

// Initialize the return code to 0.
int ret = 0;

// Attempt to execute an undefined instruction.
  printf("Before __ud2(). Return code = %d.\n", ret);
  __try {
  __ud2();
  }

// Catch any exceptions and set the return code to 1.
  __except(EXCEPTION_EXECUTE_HANDLER){
  printf("  In the exception handler.\n");
  ret = 1;
  }

// Report the value of the return code.
  printf("After __ud2().  Return code = %d.\n", ret);
  return ret;
}
Before __ud2(). Return code = 0.
  In the exception handler.
After __ud2().  Return code = 1.

Confira também

Compilador intrínsecos