0

标准c库中是否有verify()函数(例如VERIFY()msvc)或类似函数,还是我必须自己编写?如果是这样,它在哪个标题下?

编辑: assert 和 verify 之间的区别在于,verify 仍然会在发布版本中执行该函数,而 assert 中的语句不会在发布版本中编译。

IE

assert( printf("assert ") );

verify( printf("verify") );

在 debug 中会打印"assert verify",但在 release 中会打印"verify"

4

3 回答 3

4

在运行时,Cassertassert.h.

在编译时,C(自 C11 起)static_assertassert.h.

有关信息,对于static_assert某些 C89/C99 编译器,还包括它作为编译器扩展。例如 IAR 编译器static_assertintrinsics.h.

于 2012-06-14T10:43:41.407 回答
0

您可以使用CUnit进行单元测试。它是 Java 的旧 JUnit 库的 C 端口。

稍后编辑:似乎有一个我不知道的类似宏。

于 2012-06-14T10:36:21.487 回答
0

您可以使用 assert.h 中定义的断言宏

于 2012-06-14T10:36:49.507 回答