0
点赞
收藏
分享

微信扫一扫

C宏定义函数的性质

小贴贴纸happy 2022-04-13 阅读 71
c语言

 

这一道题目一开始看的有点迷惑,不了解宏定义函数的性质,一开始看上去还以为应该是54,但其实应该是

z =2*(N+(N+1)*5+1)=48watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA56aP5pifR0c=,size_20,color_FFFFFF,t_70,g_se,x_16

 

宏定义函数只是在代码编译阶段做一个简单的替换,没有任何语法和优化的空间,因此宏定义函数没有正常函数所需的开销,包括:开辟空间,记录返回地址,形参压栈,从函数中返回释放堆栈。

1 宏定义函数只能完成一些简单的替换,因此他的使用场景是有限制的,即使是宏定义函数, 也只是完成简单的功能, 不能真正的替代函数。

2 由于只是做一个替换,因此使用的时候需要谨慎,避免出现符号优先级而出现的低级错误。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA56aP5pifR0c=,size_20,color_FFFFFF,t_70,g_se,x_16

 

举报

相关推荐

0 条评论