函数和宏的区别

本文探讨了宏和函数在编译及执行过程中的不同之处。宏在编译时直接替换为代码,而函数则通过调用来执行。宏在多次使用时会复制代码,函数则重复调用同一段代码。此外,宏不产生函数调用开销,因此执行效率较高。

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

1.        宏在编译时在调用该宏的地方展开,最终嵌入到调用的代码中;函数在编译阶段在程序中会有固定代码段(非inline函数),执行到调用函数的地方会调转到该函数段继续执行。

2.        在程序代码中多次使用宏,则最终代码会有多个该宏代码的多次拷贝;函数(非inline函数)则在代码中只有一个代码段,多次调用只会调转到该代码段执行。

3.        宏不会产生函数调用,执行效率高;函数会产生函数调用,效率低。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值