(1)带参函数中的形容是变量,因此有类型检查,而带参宏只是简单的字符来替换
(2)从程序执行的过程来看,带参宏是在预处理理阶段被预处理器处理的而带彩凶数是在程序执行的过程中被处理
(3)带参宏比带参函数行快,因为带参函数在被调用时需要保护现场,而在函数回时需要恢在复理扬,带参宏仅仅是简单定符来的替换,存在边界问题,因此要尽量给变量加括号
(4)带参宏不占用内存,因为带参宏在编译之前已经被替换掉了,而带参函数在程序调用和返回的时候需要进行压栈和出栈操作,需要额外的系统开销
(1)带参函数中的形容是变量,因此有类型检查,而带参宏只是简单的字符来替换
(2)从程序执行的过程来看,带参宏是在预处理理阶段被预处理器处理的而带彩凶数是在程序执行的过程中被处理
(3)带参宏比带参函数行快,因为带参函数在被调用时需要保护现场,而在函数回时需要恢在复理扬,带参宏仅仅是简单定符来的替换,存在边界问题,因此要尽量给变量加括号
(4)带参宏不占用内存,因为带参宏在编译之前已经被替换掉了,而带参函数在程序调用和返回的时候需要进行压栈和出栈操作,需要额外的系统开销