gpt4 book ai didi

c - 一起使用 assert 和 printf 的最佳实践

转载 作者:太空宇宙 更新时间:2023-11-04 00:37:08 25 4
gpt4 key购买 nike

我目前正在使用以下语句让 assertprintf 一起工作,有没有更好的方法来做到这一点?

#define ASSERT(x) for(; !(x); assert(x))
#define ALLOC_CHECK(x, ...) ASSERT(x) printf(__VA_ARGS__ "\n");
ALLOC_CHECK(ptr != NULL, "Pointer not initialized");

最佳答案

您不需要创建自己的 assert() 变体,您可以只在断言本身中包含一条错误消息:

assert(someCondition && "Internal error: ... . Please report this bug.");

由于 assert() 宏会在失败时打印其参数,因此它也会打印您的字符串。

关于c - 一起使用 assert 和 printf 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27579212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com