如何将2个32位整数相乘以生成64位整数?

Amr*_*tha 4 c int 32bit-64bit

如何输入2个32位无符号整数,将它们相乘并将输出作为C中的64位整数?任何帮助表示赞赏!谢谢.

zr.*_*zr. 12

#include <stdint.h>

uint64_t mul64(uint32_t x, uint32_t y) {
    return (uint64_t)x*(uint64_t)y;
}
Run Code Online (Sandbox Code Playgroud)


Der*_*all 6

首先将两个整数转换为64位,然后进行正常乘法并返回该值.