为什么大多数 `rdrand` 实现使用有符号整数而不是无符号整数作为返回值?

问题描述 投票:0回答:0

出于好奇,在浏览 C 中的

rdrand
实现(例如 here)时,我偶然发现了一个我自己无法弄清楚的细节。

为什么大多数

rdrand
实现实际上返回
signed integer
,而不是
unsigned integer
? 既然无符号整数会环绕并且不能溢出,那么当有符号整数容易发生整数溢出时,为什么要在随机数生成中首先使用有符号整数呢?返回无符号整数不是更安全吗?

random integer unsigned signed rdrand
© www.soinside.com 2019 - 2024. All rights reserved.