c语言assert函数和STM32中的assert_param(expr)

本文介绍了C语言中的assert函数,用于检查条件是否满足,以及STM32中特殊的assert_param宏,该宏设计用于在条件不满足时避免执行特定语句,类似于条件表达式。assert_param在定义时会替换expr并确保在程序中可以执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

assert函数

assert描述
用于判断一个条件是否成立的函数,在c语言中说的非常详细参考以上转载内容

assert_param(expr)

设计的比较巧妙,用来判断函数是否执行的一条语句,不满足所需的条件不执行,和 a>b?a:b; 语句基本一个思想,注意define其实是替换expr,需要在程序中确保本来就可以执行,并不算设计一个函数。
#define assert_param(expr) ((expr<0) ? (void)0 :fun(expr))

  #include<stdio.h>
  #include<assert.h>
  //通过宏定义的方式来判断是否函数要执行,不符合条件的执行空语句 (void)0 
  #define assert_param(expr) ((expr<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值