C程序错误报告?

  • 回答 (2)
  • 关注 (0)
  • 查看 (30)

在寻找一种方法来提示C错误信息

struct queue *q = malloc(sizeof(*q));
if (NULL == q) {
    /* malloc failed. now what ? */
    return NULL; /* maybe ? */
}

这个例子返回NULL

void *get_data()
{
    /* stuff */

    /* Error detected. NULL is a valid return, now what ? */

    /* stuff */
}
leosslycleosslyc提问于
鲁大师回答于
已采纳
int get_data(void **ptr)

如果没有明显的“错误返回”,那么可能您的输出值不应该是返回值。错误可能是一个errno,其他一些自定义的详细错误值

刺激回答于

可以将errno分为两个部分...一个模块号和一个模块错误代码。

eg.
#define MODULE_NAME_error_code ((MODULE_NUMBER << 16) | (error_code))

所属标签

可能回答问题的人

  • 红双喜经典VS中华

    1 粉丝0 提问8 回答
  • LemonLu

    社区 · 运营 (已认证)

    45 粉丝0 提问7 回答
  • 13火麒麟

    0 粉丝0 提问4 回答
  • 滑稽园扛把子

    Swoole Inc · PHP工程师 (已认证)

    135 粉丝0 提问4 回答

扫码关注云+社区