Freigeben über


__ud2

Microsoft-spezifisch

Generiert eine nicht definierte Anweisung.

void __ud2();

Hinweise

Der Prozessor löst eine ungültige Opcode-Ausnahme aus, wenn Sie eine nicht definierte Anweisung ausführen.

Die __ud2-Funktion ähnelt dem UD2 Computeranweisung, und ist nur im Kernelmodus verfügbar. Weitere Informationen Suche nach dem Dokument, das Handbuch "des Intel-Architektur-Softwareentwicklers, Volume 2: Anweisungs-festgelegter Verweis" auf der Website Intel Corporation.

Anforderungen

Intrinsisch

Architektur

__ud2

x86, x64

Headerdatei <intrin.h>

Beispiel

Das folgende Beispiel führt eine nicht definierte Anweisung aus, die eine Ausnahme auslöst. Der Ausnahmehandler ändert dann den Rückgabecode von Null in einen anderen.

// __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;
}
  
  
  
  
  

Siehe auch

Referenz

Intrinsische Compilerfunktionen