C 标准库中缺少整数幂函数在程序员中提出了问题。尽管其表面上很简单,但在提供的数学工具集中明显缺少此函数。
在 C 11 之前,pow 函数中没有整数重载。这种遗漏可能源于 C 和 C 开发的历史背景。
在 C 的早期,浮点计算在系统编程中不太流行。此外,ANSI C 的目标是编纂现有实践而不是创新。因此,添加积分幂运算符并不是优先考虑的事情。
C 最初继承了 C 的许多属性。它主要被设计为具有面向对象功能的 C 的增强,而不是对其核心的彻底检修功能。
C 标准制定机构按照特定的准则运作。这些指南优先考虑语言的简单性和一致性,限制添加冗余或重叠的功能。
此外,标准制定委员会必须考虑引入新功能的机会成本。添加看似微不足道的功能可能会取代标准中包含的其他更有价值的改进。
在 C 11 中,进行了一项重大更改:添加了重载允许 pow 函数中使用整数参数。此更改符合将更多数学功能纳入标准库的更广泛趋势。
对于浮点参数,该函数以一致且显式的方式处理上溢和下溢。然而,对于整数参数,它有效地将它们升级为双精度来执行操作。
早期版本的 C 中缺少 pow(int base, int exponent) 函数受到影响由于历史原因和标准制定的限制。它在 C 11 中的引入反映了程序员不断变化的需求以及标准库功能的不断增强。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3