gpt4 book ai didi

c - rand()/RAND_MAX 是否返回 [0, 1) 或 [0,1]?

转载 作者:行者123 更新时间:2023-12-04 10:57:50 25 4
gpt4 key购买 nike

我看了很多地方,似乎找不到答案。我明白rand() / RAND_MAX == 1的概率低是因为 rand()不太可能等于 RAND_MAX .
但是理论上可行吗?
我看到有人写类似的东西,范围是 [0, 1) ,但是我不明白为什么。

谢谢!

最佳答案

奇怪rand() / RAND_MAX由于整数除法的影响,只会绘制 0 或 1。

您的意思是 1.0 * rand() / RAND_MAX ?那可以画0和1;原因是rand()允许返回 RAND_MAX .

这是一种不寻常的拥有事物的方式。通常你不想画 1,所以你经常会看到

rand() / (RAND_MAX + 1.0)

反而。请注意 1.0强制分母采用浮点类型,因此分子也将被提升。独立, RAND_MAX + 1容易溢出整数类型,这可能会产生未定义的结果。

关于c - rand()/RAND_MAX 是否返回 [0, 1) 或 [0,1]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50811413/

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