How to Use the Try and Catch Blocks in C++?
Last Updated :
21 Apr, 2024
In C++, the try
and catch
blocks are used as a part of the exception handling mechanism which allows us to handle runtime errors. If the exceptions are not handled properly then the flow of the program is interrupted and the execution might fail. In this article, we will learn how to use try
and catch
blocks in C++.
Try and Catch Blocks in C++
In C++, a try
block contains a set of statements where an exception might occur during the program's execution. It is followed by one or more catch
blocks. A catch
block is where we handle the exceptions, it specifies the type of exception it can handle and a response method to the exception. When an exception is thrown from a try block, the execution of the current function terminates immediately, and control is transferred to the matching catch block that handles the exception.
Syntax to Use Try and Catch Blocks in C++
try {
// Code that might throw an exception
}
catch (exception_type e) {
//catch the exception thrown from try block and handle it
}
Here, exception_type
is the type of exception that the catch
block can handle.
C++ Program to Use of Try and Catch Blocks
The following program illustrates how we can use try-catch blocks for exception handling in C++.
C++
// C++ Program to illustrate the use of try and catch blocks
#include <iostream>
#include <stdexcept>
using namespace std;
int main()
{
// Declare two numbers
int num1 = 10;
int num2 = 0;
try {
// Throw a runtime_error exception if the
// denominator is zero
if (num2 == 0) {
throw runtime_error("Division by zero error");
}
cout << "Result of division: " << num1 / num2
<< endl;
}
catch (const exception& e) {
// Catch the exception and print the error message
cerr << "Caught exception: " << e.what() << endl;
}
return 0;
}
Output
Caught exception: Division by zero error
Time Complexity:O(1)
Auxiliary Space: O(1)
Explanation: In the above example, we have performed division of two numbers. If the denominator is zero, it throws a runtime_error
exception that is caught and handled in the catch
block, and the program continues its execution without interruption. This is how we can use the try
and catch
blocks in C++ to handle exceptions effectively.
Similar Reads
How to Throw and Catch Exceptions in C++? In C++, exception handling is a mechanism that allows us to handle runtime errors and exceptions are unusual conditions that occur at runtime. In this article, we will learn how to throw and catch exceptions in C++. Throw and Catch Exceptions in C++In C++ exceptions can be "thrown" when an error occ
2 min read
How to Use cin.fail() Method in C++? In C++, the cin.fail() method is a part of <iostream> library that is used to check whether the previous input operation has succeeded or not by validating the user input. In this article, we will learn how to use cin.fail() method in C++. Example: Input: Enter an integer: aOutput: Invalid Inp
2 min read
How to Throw an Exception in C++? In C++, exception handling is a mechanism that allows us to handle runtime errors and exceptions are objects that represent an error that occurs during the execution of a program. In this article, we will learn how to throw an exception in C++. Throw a C++ ExceptionThrowing an exception means sendin
2 min read
How to Catch All Exceptions in C++? In C++, exceptions are objects that indicate you have an error in your program. They are handled by the try-catch block in C++. In this article, we will learn how to catch all the exceptions in C++. Catching All Exceptions in C++To catch all kinds of exceptions in our catch block in C++, we can defi
2 min read
How to Throw a Custom Exception in C++? In C++, exception handling is done by throwing an exception in a try block and catching it in the catch block. We generally throw the built-in exceptions provided in the <exception> header but we can also create our own custom exceptions.In this article, we will discuss how to throw a custom e
2 min read