oli83 Geschrieben 21. Januar 2005 Teilen Geschrieben 21. Januar 2005 Wie kann ich unter C++ mit Hilfe des Exception-Handlings Zugriffe auf ungültige Adressen im Hauptspeicher abfangen?? Was muss ich catch übergeben, damit ich Exceptions uneterscheiden kann (z.B. Fehler bei Dateizugriff, fehlerhafte Eingaben durch den Benutzer)? Danke. #include <iostream> using namespace std; int main() { try { int a[5] = {0}; a[10] = 1; } catch( ??? ) { cout << "Array-Element existiert nicht"; } return 0; } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 21. Januar 2005 Teilen Geschrieben 21. Januar 2005 naja ich hab zwar nicht viel ahnung von C++ aber ich hätt halt ma im google versucht: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_pluslang_The_try.2c_.catch.2c_.and_throw_Statements.asp Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 21. Januar 2005 Teilen Geschrieben 21. Januar 2005 Solche Fehler werden nicht durch Exception Handling abgedeckt. Es erzeugt einfach undefiniertes Verhalten, auch wenn der Compiler von Microsoft Visual C++ es erlaubt, solche Fehler durch catch(...) zu fangen. Du wirst also auf betriebssystemspezifische Funktionen zurückgreifen müssen. Falls es um Windows geht, schau mal hier rein: http://forum.fachinformatiker.de/showthread.php?t=71953 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
oli83 Geschrieben 21. Januar 2005 Autor Teilen Geschrieben 21. Januar 2005 Vielen Dank für die schnelle Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.