作为作业的一部分,我被要求用 C 语言实现一系列简单函数,并且出于运行时效率的原因,尽可能用宏替换这些函数。
是否有一般规则可以帮助我确定是否可以用宏替换 C 中的简单函数?为什么这种替换能够优化运行时效率?
感谢您的宝贵时间。
编辑:正如这里许多人指出的那样,这项任务的目标对于代码质量甚至在某些情况下的效率来说是适得其反的。
最佳答案
唯一的一般规则是:尽可能避免类似函数的宏,因为它们通常不可读和/或不安全。您应该尽可能使用函数。
类函数宏通常仅在处理编译时问题(例如常量、标识符、声明等)时才有意义。
为了性能而用宏替换函数根本不应该考虑。大约 20 年前曾经是这样,因为当时编译器在优化代码方面非常糟糕,以至于程序员比编译器做得更好。现在是另一种方式,把这些事情留给编译器。
关于c - 什么时候可以用宏替换C中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34789010/