debug版本中检测非法情况使用断言,在release版本中怎么办?

comdoc 2009-09-22 03:55:00
通常在debug版本中使用断言来避免程序中非法情况的出现,如空指针,非法参数等,但是在release版本中断言不起作用,那怎样才能保证程序(如函数)的健壮性呢?

看了一下标准C的memcpy函数,函数入口并没有对参数做检查,那如果传入空指针后程序崩溃,为什么要这样设计函数呢,干嘛不像debug版本一样检测一下输入参数呢?
...全文
88 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
comdoc 2009-09-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 candeabc123 的回复:]
只是为了调试方便  和提高程序健壮性
楼主不要太过于探究这种东西
如果你想使用memcpy函数  那你就应该确保参数的有效性啊  因为没有结果的返回啊  出错了怎么告诉你 ?

[/Quote]说的在理,这种情况应该由函数的使用者去避免传入非法参数
candeabc123 2009-09-22
  • 打赏
  • 举报
回复
只是为了调试方便 和提高程序健壮性
楼主不要太过于探究这种东西
如果你想使用memcpy函数 那你就应该确保参数的有效性啊 因为没有结果的返回啊 出错了怎么告诉你 ?

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧