gpt4 book ai didi

c++ - 是否有与 Linux 的 MulDiv 等效的功能?

转载 作者:IT王子 更新时间:2023-10-29 01:27:19 25 4
gpt4 key购买 nike

MulDiv Windows API 中的便利函数等同于(a*b)/c,但它将a*b 的中间结果存储在一个64 位变量 在除以 c 之前避免整数溢出,其中 a*b 大于 MAX_INT(a*b)/c 不是。

WINBASEAPI
int
WINAPI
MulDiv(
_In_ int nNumber,
_In_ int nNumerator,
_In_ int nDenominator
);

在 Linux 中编程时,是否有等效的便捷功能?

最佳答案

Linux 好像没有对应的功能

我创建了一个简单的内联函数(尽管我还没有用 64 位编译测试过它)

inline int mul_div(int number, int numerator, int denominator) {
long long ret = number;
ret *= numerator;
ret /= denominator;
return (int) ret;
}

关于c++ - 是否有与 Linux 的 MulDiv 等效的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14872499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com