ASSERT()是一个调试程序时经常使用的宏,在程序运行时它计算括号内的表达式,如果表达式为FALSE (0), 程序将报告错误,并终止执行。如果表达式不为0,则继续执行后面的语句。这个宏通常原来判断程序中是否出现了明显非法的数据,如果出现了终止程序以免导致严重后果,同时也便于查找错误。例如,变量n在程序中不应该为0,如果为0可能导致错误,你可以这样写程序:
    ......
    ASSERT( n != 0);
    k = 10/ n;
    ......
    ASSERT只有在Debug版本中才有效,如果编译为Release版本则被忽略。
    assert()的功能类似,它是ANSI C标准中规定的函数,它与ASSERT的一个重要区别是可以用在Release版本中。

转载于:https://www.cnblogs.com/cwbo-win/articles/3396554.html

ASSERT()是干什么用的相关推荐

  1. 笔试总结2(整理 觉得比较好的)

    1.static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?  static全局变量与普通的全局变量有什么区别: stati ...

  2. MFC90条技巧-带目录

    1."属性页的添加: 2."List Control中标题栏(Column)的添加: 3."ToolBar和StatusBar中控件的添加: 4."通过Cont ...

  3. (转)MFC技巧学习五

    51. 如何获得其他程序的图标,并显示在View中 [问题提出] 有的时候,如:类资源管理器会遇到获得程序图标并显示的操作,如何实现呢? [解决方法] SDK函数SHGetFileInfo来获得有关文 ...

  4. 【转】MFC学习总结

    HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { if ((pWnd->GetDlgCtrlID() == ...

  5. 转:C语言面试题大汇总 (图像处理方向)

    C语言面试题大汇总 (图像处理方向) C语言面试题大汇总 1.局部变量能否和全局变量重名? 答:能,局部会屏蔽全局.要用全局变量,需要使用"::" ;局部变量可以与全局变量同名,在 ...

  6. C/C++面试题-1

    1.局部变量能否和全局变量重名? 答:能,局部会屏蔽全局.要用全局变量,需要使用"::" ;局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局 ...

  7. MFC学习总结 (67个技巧)

    1."属性页的添加: 创建对话框的类,该类要从CpropertyPage继承:然后在要添加该对话框为属性页的类(头文件)里创建CpropertySheet类的一个对象m_tabsheet和新 ...

  8. C语言面试题大汇总之华为面试题 Eddy整理

    1.局部变量能否和全局变量重名? 答:能,局部会屏蔽全局.要用全局变量,需要使用"::" ;局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局 ...

  9. 华为软件研发面试题2

    *************************************************** 更多精彩,欢迎进入:http://shop115376623.taobao.com ****** ...

最新文章

  1. 解决一个坑爹的mininet的pingall失败的问题(自己编译安装openvswitch后)
  2. C#减少图片文件大小和尺寸
  3. STM32 电机教程 12 - BLDC 闭环电流控制
  4. Redisson初始化
  5. 干货|对某杀猪盘的渗透测试
  6. php select user 验证,php 用户验证的简单示例
  7. hyper-v虚拟服务器内存满了,在Hyper-V Dynamic Memory里设置虚拟内存
  8. 20191015:基数排序法
  9. 应用安全-安全设备-Waf系列-软Waf-安全狗(Safedog)
  10. Atitit mysql存储过程编写指南 1. 定义变量 1 1.1. 变量名以@开头用户变量 会话变量 1 1.2. 以declare关键字声明 存储过程变量 2 1.3. @是用户自定义变量,
  11. 支持8086c语言编程的编译器,8086汇编语言编程软件|8086汇编语言编译器(MKStudio) v1.0免费版 附安装教程_星星软件园...
  12. 程序员价值观和网络复杂性-网络不可达排查过程
  13. 完全仿京东电商小程序的开源项目,可赚佣金
  14. 专利分析:数字人民币的“双离线”支付问题
  15. 根号3表白html,根号三的那句情话
  16. 用c语言向无盘符分区拷文件,用GHOST软件将PC硬盘上C分区制作成映象文件﹡.gho的步骤...
  17. 关于IE浏览器加载图片报206错误的一个解决方法
  18. 5g nr,PDSCH/PUSCH,UE如何选择MCS table
  19. [paper]Defense against Adversarial Attacks Using High-Level Representation Guided Denoiser
  20. 麒麟V10SP1的国产化Qt适配

热门文章

  1. “深绿” 及 AlphaGo 对指挥与控制智能化的启示
  2. AAAI2018正式落幕 13个世界顶尖AI教授都讲了啥?
  3. LeCun论战Markus:AI是否需要类似人类的认知能力?
  4. loj6300 「CodePlus 2018 3 月赛」博弈论与概率统计
  5. [译] 什么是 JavaScript 生成器?如何使用生成器?
  6. loadrunner-2-12日志解析
  7. 6条可以成为更好程序员的建议
  8. python-虎扑爬虫
  9. 虚拟路由冗余协议VRRP
  10. 在开源模式下云计算大数据的现状浅析