gpt4 book ai didi

c++ - 转换为无符号时,标准表示结果为 "the least unsigned integer"。为什么 "least"在这里很重要?

转载 作者:可可西里 更新时间:2023-11-01 16:37:57 25 4
gpt4 key购买 nike

C++ 标准在 [conv.integral/2] 中说,关于整数转换为无符号:

If the destination type is unsigned, the resulting value is the least unsigned integer congruent to the source integer (modulo 2n where n is the number of bits used to represent the unsigned type).

我的问题是,为什么会有“最少”这个词?有没有可能有多个结果,我们需要从中选择一个?

最佳答案

有无限多个整数等于任何值 k 模 2n。有k, k+2n, k+2*2n, k+3*2n, k-2 n、k-2*kn

其中,一个是最小的无符号(正)值。

部分 C++ 标准在数学中指定。我相信这是其中之一。

关于c++ - 转换为无符号时,标准表示结果为 "the least unsigned integer"。为什么 "least"在这里很重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53181994/

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