(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Parametervalidierung

Die meisten CRT-Funktionen mit erhöhter Sicherheit und zahlreiche der bereits vorhandene Funktionen überprüfen ihre Parameter. Dazu gehört die Überprüfung auf NULL-Zeiger, die Überprüfung, dass ganze Zahlen im gültigen Bereich liegen oder die Überprüfung der Gültigkeit von Enumerationswerten. Wenn ein ungültiger Parameter gefunden wird, wird der Handler für ungültige Parameter ausgeführt.

Im Falle eines ungültigen Parametern ruft die C-Runtime den aktuell zugewiesenen Handler für ungültige Parameter auf. Die Parameteraufrufe Watson-Absturzberichterstellung standardmäßigen ungültige, die die Anwendung durch den Benutzer sogar abstürzt und fragt, ob er das Absturzabbild an Microsoft für die Analyse geladen werden möchten. Im Debugmodus führt ein ungültiger Parameter auch zu einem Assertionsfehler.

Dieses Verhalten kann geändert werden, indem die Funktion _set_invalid_parameter_handler verwendet, um den ungültigen Parameterhandler auf die eigene Funktion festzulegen. Wenn die Funktion, die Sie angeben, die Anwendung nicht beendet, wird die Steuerung an diejenige Funktion zurückgeben, der die ungültigen Parameter übergeben wurden. Diese wird in der Regel die Ausführung beenden, einen Fehlercode zurückgegebe, und zusätzlich errno einen Fehlercode zuweisen. In vielen Fällen sind errno-Wert und Rückgabewert beide EINVAL und zeigen einen ungültigen Parameter an. In einigen Fällen wird ein bestimmterer Fehlercode, wie EBADF für einen ungültigen Dateizeiger-Parameter zurückgegeben. Weitere Informationen über errno, finden Sie unter errno, _doserrno, _sys_errlist und _sys_nerr.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft