宏和函数

本文探讨了宏在程序修改中的便利性,如简化常量替换和提高运行效率,同时也指出了宏的不足,如无法调试、可能产生副作用和无类型安全。对比之下,函数提供了类型安全、递归支持和更好的调试能力。文章还提到了常量、内联函数作为宏的替代方案,以及#和##在宏定义中的特殊作用。
摘要由CSDN通过智能技术生成

1、宏的好处:
  • 方便程序的修改

可通过两方面(改数据,和字符串长度过长的时候)

使用简单宏定义可用宏代替一个在程序中经常使用的常量,这样在将该常量改变时,不用对整个程序进行修改,只修改宏定义的字符串即可,而且当常量比较长时,我们可以用较短的有意义的标识符来写程序,这样更方便一些

  • 提高程序的运行效率

使用带参数的宏定义可完成函数调用的功能,又能减少系统开销,提高运行效率。

2.宏的缺点

  • 不能调试,递归
  • 宏的参数有副作用,不带括号可能会造成歧义
  • 宏没有类型安全检查
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值