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