CException is a project released by Throw The Switch. CException is designed to provide simple exception handling in C using the familiar
throw syntax. I've been recently thinking about the downsides of error logging, so I am excited to see a lightweight exception library for C.
The exception implementation is kept simple by only allowing you to throw a single error code. No support for throwing objects, structs, or strings is included. The library can be configured for either single-tasking or multi-tasking which makes this project a good fit for embedded systems using an RTOS.
CException is implemented in ANSI C and is highly portable. As long as your system supports the standard library calls
longjmp, you can use CException in your project. If you're looking for an exception library to use on embedded systems, CException is for you.
For more on CException: