将会发生什么unsigned int
当我溢出它时包含它?具体来说,我想与两个相乘unsigned int
s: 里面会有什么unsigned int
乘法完成后?
unsigned int someint = 253473829*13482018273;
unsigned
数字不能溢出,而是使用模数的属性进行环绕。
例如,当unsigned int
是 32 位,结果将是:(a * b) mod 2^32
.
正如查尔斯·贝利指出的那样,253473829*13482018273
在转换之前可能会使用有符号乘法,因此您应该明确unsigned
乘法之前:
unsigned int someint = 253473829U * 13482018273U;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)