Hauptinhalt

Unterdrücken von Warnungen

Ihr Programm gibt möglicherweise Warnungen aus, die sich nicht zwangsläufig negativ auf die Ausführung auswirken. Um Verwirrung zu vermeiden, können Sie Warnmeldungen während der Ausführung ausblenden, indem Sie den Meldungsstatus von 'on' auf 'off' setzen.

Zur Unterdrückung spezifischer Warnmeldungen müssen Sie zunächst die Warn-ID herausfinden. Jede Warnmeldung hat eine eindeutige Kennung. Lassen Sie die Warnung erneut auftreten, um die mit der MATLAB®-Warnung verbundene Warn-ID zu finden. Dieser Code gibt zum Beispiel die Warnung wieder, die ausgegeben wird, wenn MATLAB versucht, einen nicht existierenden Ordner zu entfernen:

rmpath('folderthatisnotonpath')
Warning: "folderthatisnotonpath" not found in path. 

Hinweis

Falls diese Anweisung nicht zu einer Warnmeldung führt, verwenden Sie den folgenden Code, um die Anzeige aller Warnungen vorübergehend zu aktivieren und stellen Sie dann den ursprünglichen Warnstatus wieder her:

w = warning ('on','all');
rmpath('folderthatisnotonpath')
warning(w)

Informationen über die zuletzt ausgegebene Warnung erhalten Sie mit den Funktionen warning oder lastwarn. Dieser Code verwendet den query-Status, um eine Datenstruktur mit der Warn-ID und dem aktuellen Status der letzten Warnung zurückzugeben:

w = warning('query','last')
w = 

    identifier: 'MATLAB:rmpath:DirNotFound'
         state: 'on'
Sie können das ID-Feld in der Variablen id speichern:
id = w.identifier;

Hinweis

warning('query','last') gibt die zuletzt angezeigte Warnung zurück. MATLAB zeigt nur Warnmeldungen an, für die der Warnstatus aktiviert ist (state: 'on') und die eine Warn-ID enthalten.

Mit der Funktion lastwarn können Sie die letzte Warnmeldung abrufen, unabhängig von ihrem Anzeigezustand:

lastwarn
ans =

"folderthatisnotonpath" not found in path.

Ein- und Ausschalten von Warnungen

Nachdem Sie die Warn-ID aus dem query-Status erhalten haben, verwenden Sie diese Informationen, um die mit dieser Kennung verbundene Warnung ein- oder auszuschalten.

Machen Sie mit dem Beispiel aus dem vorherigen Abschnitt weiter, indem Sie die Warnung 'MATLAB:rmpath:DirNotFound' ausschalten und den Vorgang wiederholen.

warning('off',id)
rmpath('folderthatisnotonpath')

MATLAB zeigt keine Warnung an.

Schalten Sie die Warnung ein und versuchen Sie, einen nicht existierenden Pfad zu entfernen:

warning('on',id)
rmpath('folderthatisnotonpath')
Warning: "folderthatisnotonpath" not found in path.

MATLAB gibt nun eine Warnung aus.

Tipp

Schalten Sie die zuletzt aufgetretene Warnung mit warning('off','last') aus.

Steuern aller Warnungen

Der Begriff alle bezieht sich nur auf die Warnungen, die während der aktuellen MATLAB-Sitzung ausgegeben oder geändert wurden. Geänderte Warnzustände bleiben nur während der aktuellen Sitzung erhalten. Wenn Sie eine neue Sitzung starten, werden die Standardeinstellungen wiederhergestellt.

Verwenden Sie die ID 'all', um die Gruppe aller Warnungen darzustellen. Sehen Sie sich den Status aller Warnungen mit einer der beiden folgenden Syntaxen an:

warning('query','all')
warning

Zur Aktivierung aller Warnungen und Überprüfung des Status:

warning('on','all')
warning('query','all')
All warnings have the state 'on'.

Verwenden Sie zur Deaktivierung aller Warnungen und Überprüfung des Status folgende Syntax:

warning('off','all')
warning
All warnings have the state 'off'.

Siehe auch

Themen