c语言的宏是怎么处理的在函数内定义宏有什么坏处吗?

 直接调用即可如下示例:


  

  使用宏函数或者宏函数时,注意如下几点:

  (1)宏函数的参数没有类型预处理器只负责做形式上的替换,而不做参数类型检查所以传参时要格外小心。

  (2)宏函数定义要注意格式尤其是括号。

  (3)宏函数往往会导致较低的代码执行效率

    若是普通函数,则通过递归可取的最大值,时间复杂度为O(n)但若是宏函数,则宏展开为( a[n]>max(n-1)?a[n]:max(n-1) )其中max(n-1)被调用了两遍,这样依此递归下去时间複杂度会很高。


我要回帖

更多关于 c语言的宏是怎么处理的 的文章

 

随机推荐