摘要:
一:C标准库中的 assert() 会粗暴地结束程序 assert()在发布版(release)的程序中被编译为空语句,它仅存在于调试版(debug)的程序中,它的意图很明显,就是及时提醒开发者注意程序中的非正常情况,并辅助开发者排除这种非正常情况,使程序逐步趋于完善。一般来说,一个assert()断言失败,必然是程序的运行状态超出了程序员的预期,或程序流程进入到目前代码尚未处理的一个分枝。在这种情况下,程序员要找出问题的根源并改进程序,就需要对assert()上下文进行分析。此时继续向下单步执行几句代码,可以搜集更多的信息,有助于更及时的解决问题。可是“微软公司提供的”C标准库的assert 阅读全文