gpt4 book ai didi

c - 我应该为 C 函数中的错误返回什么?

转载 作者:太空狗 更新时间:2023-10-29 15:34:05 27 4
gpt4 key购买 nike

目前,如果发生错误,我在 C 语言的自定义函数中返回 -1,成功则返回 0。例如,使用链表和某些函数需要非空列表才能正常工作。如果作为参数传递的列表为空,我返回 -1(错误),如果它不为空且函数正常运行则返回 0。

也许我应该返回 1 而不是 -1?

这是用 C 语言做事的标准方法还是您推荐一种不同的方法?

最佳答案

返回一个非零值表示失败。这样你就可以这样编写函数调用:

if(func_call())
{
doErrorHandling();
}

此约定将允许您使用任何 !0 值来指示特定错误,这将允许您以统一的方式使用一个变量。因此,上面示例中显示的 if 的主体可以有一个 switch 语句来处理特定的错误。

你可以用不同的方式来做 -- 但如果你选择这样做,请坚持约定 -- 不幸的是,win32 API(和我使用的其他 API)混合和匹配约定。

关于c - 我应该为 C 函数中的错误返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2217226/

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