如何知道 sigsetjmp 或 siglongjmp 是否失败
How to know if sigsetjmp or siglongjmp fail?
这些函数的返回值并不意味着它们是否成功。 有没有办法知道?
sigsetjmp
不会失败 - 它只是将调用者的上下文存储到提供的缓冲区中。
siglongjmp
不会返回,因此无法通过返回值指示失败。在调用缓冲区之前,必须确保缓冲区有效。
在C++中,通常不能使用这些函数;如果调用堆栈上有任何自动对象具有非平凡析构函数,则调用longjmp
给出未定义的行为,并且对setjmp
的匹配调用。
相关文章:
- C ++回测问题:如何检查构造函数在假定失败时是否失败(给定输入的无效参数)
- C++编译器 g++.exe 无法编译简单的测试程序 - 确定 CXX 编译器是否工作失败
- 标准中是否有类似折叠的算法(或失败:提升)可用?
- C++标准是否保证失败的插入到关联容器中不会修改 rvalue-reference 参数?
- 为什么这C++检测T型是否具有空运算符(EDT const&)失败的特征?
- 是否保证标准提取运算符>>在失败时不会更改参数?
- C 标准是否指定在某些情况下,编译应在错误中失败
- std::tuple的实现是否允许在触发空类元素的派生到基转换时失败
- std::remove 和 std::remove_if 设计的稳定性是否失败
- 检查 QTextStream::运算符>>是否失败
- c++ sort() 函数对于<algorithm>整数数组的大小(元素数)>10^7 个元素的大输入是否失败?
- 为什么我们总是检查输入是否失败而不检查输出
- 如何在初始化的同一行检查流是否失败
- 如何检查“strcmp”是否失败
- 如何知道 sigsetjmp 或 siglongjmp 是否失败
- 检测升压测试用例是否失败
- 如何判断对变量的流提取是否失败
- 检查在vector的vector中搜索时std::find是否失败
- 如何检查数组中的输入是否失败
- 检查 QSqlQuery::addBindValue() 是否失败