c - 方法中的 "should never get here"行

标签 c function

我发现自己用这行代码编写函数,并且在这样做时我总是对自己感到有点不好。其他人也这样做吗?这是不好的做法吗?

void f()
{
    while(true) {
    // ...
    if(condition)
        return;
    }

    //should not get here
    assert(0);
}

最佳答案

取决于代码永远不会达到这一点的重要性。

如果我的代码绝对不允许失败,我会经常检查不应该发生的不允许的条件。

如果是 case/switch 语句,我总是使用错误处理程序放入默认值,即使它永远无法到达那里。

关于c - 方法中的 "should never get here"行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52457777/

相关文章:

Char* 从 char 数组中解析错误

c - 未知的 valgrind 错误 C

ios - 我可以在 Swift 中打印函数类型吗?

java - Java 8 中的谓词和函数接口(interface)有什么区别?

c++ - 将堆栈传递给函数

c - 通过数组初始化结构

c++ - 无法在 C++ 项目中链接 crypt

java - 在 JNI 中使用 GetIntArrayElements 打印数组元素

python - 返回 Python 中的封闭范围变量

c - 这段代码给出了一个荒谬的答案