在C中声明关键字

年份

除了教科书上定义的关键字“ assert”以外,实际用例是什么?

它不是常用的关键字,因此很少有示例可以解释实际的实现及其在Code中的用法

载子

您可以使用任何适合的方式使用它。就个人而言,当我不想依赖任何依赖项时,我将其用于编写简单的单元测试。

有人用它来检查前置条件和后置条件,例如:

int foo(int a, int b) {
    int result;

    assert(a > 0 && a < 150);
    assert(b > 20 && b < 1000);

    // do something with a, b and store something in result

    assert(result > -10 && result < 10);

    return result;
}

但是请注意,可以通过定义NDEBUG在编译时禁用断言因此,例如,如果您依靠它作为前提条件,则可能希望通过无条件构建的测试将它们加倍。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章