Как выбросить исключение в языке Си: учимся использовать throw exception
"Throw exception" в языке программирования С используется для вызова исключения во время выполнения программы. Исключения позволяют обрабатывать ошибки и неожиданные ситуации, которые могут возникнуть в программе.
Для вызова исключения в С используется ключевое слово "throw" с последующим объектом типа "exception". Объект "exception" содержит информацию об ошибке или иной неожиданной ситуации, которая вызывает исключение. Он может быть создан вручную или заранее определен в библиотеке С++.
Пример кода:
#include
#include
using namespace std;
int divide_numbers(int a, int b) {
if (b == 0) {
throw exception("Division by zero!");
}
return a / b;
}
int main() {
try {
int result = divide_numbers(10, 0);
cout << "Result: " << result << endl;
}
catch (const exception& e) {
cerr << "Error: " << e.what() << endl;
}
return 0;
}
В данном примере функция "divide_numbers" делит одно число на другое. Если второе число равно нулю, функция вызывает исключение типа "exception" с сообщением "Division by zero!".
В функции "main" вызывается функция "divide_numbers" с аргументами 10 и 0. Так как второй аргумент равен нулю, функция "divide_numbers" вызывает исключение. Исключение перехватывается с помощью блока "try-catch". В этом блоке вызывается функция "what" объекта "exception", чтобы получить сообщение об ошибке.
Результат работы программы:
Error: Division by zero!
Также в С++ есть различные типы исключений, которые могут использоваться для разных видов ошибок, например "logic_error" для ошибок в логике программы или "runtime_error" для ошибок, которые возникают во время выполнения программы.