I have been told that C does not have any runtime mechanism to catch exceptions like in Java. I am a bit confused about how, say for example, the division by zero exception is handled. I was reading about the IEEE 754 floating point standard and how it defines a division by zero exception, among others. So my questions is when I get something like this after running a program:
$ ./divby0_demo
Floating point exception (core dumped)
Is this the OS/kernel killing my program (after "catching the exception") by sending something like a signal (like SEGV when a bad pointer dereference happens) or is this being handled by standard C libraries (libc) that my program gets linked with?