第一编博客从C语言函数返回错误信息开始

本文讨论了在C语言中如何从函数返回错误信息,包括直接返回整型数值、使用结构体指针和全局变量errno等方式,并提出了对错误处理和参数验证的思考。作者提倡采用类似网络协议的消息机制来传递错误信息。
摘要由CSDN通过智能技术生成

    听说csdn不错,老早也有接触过(下载资源),今天遇到一个问题,想到之前自己的代码都没有积累下来,每一次都是临时需要临时编写,太浪费了,所幸注册csdn帐号,写下来。

    今天在编写一个函数,在函数中有对传进来的参数及函数运行过程中的错误信息进行一些判断,当发生错误的时候,需要返回错误信息给调用者,但怎样返回呢?

    有些函数是直接return一个整型的数,0表示错误,1表示正确,然后就没有其它信息了,这样不好,传送给调用者的信息太少。

    有的函数也是返回一个整型的数字,但不局限于0和1,而是用许多数字,表示不同的信息,比如大于0的表示执行正确,小于0的表示执行错误,然后再对小于0的信息进行判断,比如-1表示参数空指针,-2表示malloc分配空间分败等,以这样子的方式进行错误信息的返回有一个限制,就是返回的信息,只有一个,即一次只能判断一次错误。

    在查找资料的时候,有看到windows的api有用了一个32位的无符号值,使用这个32位数值的不同位来表示,不同的错误,我是觉得,这样子又有点复杂了。

    我还有想到一种方法,就是调用者在传弟给被调用者的时候,传进去一个err_msg(结构体)的地址,这样子,当有错误发送的时候,就可以设置这个err_msg结构体,并且return的值中,只使用0和1,0表示错误,1表示正确,只返回0时,就对err_msg结构体进行处理࿰

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值