c:c_exception_handling
This is an old revision of the document!
Table of Contents
C - C++ Exception Handling
#include <iostream> using namespace std; int main() { cout << "Start\n"; try { cout << "Inside try block\n"; throw 1; // throw an error cout << "This will not execute"; } catch (int i) { // catch an error cout << "Caught an exception -- value is: "; cout << i << "\n"; } cout << "End"; return 0; }
Multiple catch blocks
#include <iostream.h> int main () { try { char * mystring; mystring = new char [10]; if (mystring == NULL) throw "Allocation failure"; for (int n=0; n<=100; n++) { if (n>9) throw n; mystring[n]='a'; } } catch (int i) { cout << "index " << i << " is out of range" << endl; } catch (char * str) { cout << "Exception: " << str << endl; } return 0; }
Class exceptions
#include <iostream> #include <cstring> using namespace std; class forgetcode { public: char Error[80]; forgetcode() { cout<<"Error has occured"; } void display() { cout<<"\nPlease Enter a positve number"; } }; int main() { int i; try { cout << "Enter a positive number: "; cin>>i; if(i<0) throw forgetcode(); else cout<<"\nThe entered number is "<<i; } catch (forgetcode f) { f.display(); } return 0; }
c/c_exception_handling.1507803447.txt.gz · Last modified: 2020/07/15 09:30 (external edit)