Obsługa wyjątków w C - Jaki jest pożytek z powrotu setjmp ()?

Mam kilka pytań dotyczących użycia setjmp / longjmp -

Jaki jest pożytek z setjmp (jmp ___ buf stackVariables) powracającego 0. Jest to domyślne, na które nie możemy wpływać.

Jedynym znaczeniem setjmp (stackVariables) jest wypychanie stosu w stackVariables. I w zasadzie 0 mówi nam, czy stos został pomyślnie wciśnięty na zmienne stack_variables.

Jest to jedna okazja, gdy wartość jest niezerowa (dowolna niezerowa) po powrocie z longjmp. Co powraca z lomgjmp, kiedy wracasz z longjmp, kiedy Twój wyjątek jest obsługiwany. To jest bardzo mylące.

Czy niektórzy mogą odnieść się do tego, aby spróbować / rzucić i złapać. Byłoby naprawdę świetnie, gdyby można było podać dobre przykłady setjmp / longjmp.

Jest longJmp jak rzut i jest wywoływany tuż po miejscu, w którym można podnieść wyjątek.

Dzięki.

questionAnswers(4)

yourAnswerToTheQuestion