分享

单片机C语言

 thchen0103 2017-08-29

带参数的宏和带参数的函数很相似,但是有本质的区别。

见下面例子,、

程序如下

单片机C语言-预处理命令(三)带参数的宏和函数参数

仿真电路图如下

单片机C语言-预处理命令(三)带参数的宏和函数参数

运行结果如下

单片机C语言-预处理命令(三)带参数的宏和函数参数

1、函数调用时要把实参表达式的值求出来再赋予形参,而宏代换中只对实参表达式不做计算而直接原样代换。

2、带参宏的使用会使具有同一作用的代码块在目标文件中存在多个副本,即会增加目标文件的大小。而函数在目标文件中只存在一处,比较节省程序空间。

3、宏进行定义时不会考虑参数的类型。函数的形参则要求确定参数的类型。

4、函数的参数存在存在值传递和指针传递,带参数的宏则不存在该问题。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多