gpt4 book ai didi

random - 生成一个从 0 到 255(含)的随机 u8

转载 作者:行者123 更新时间:2023-11-29 07:45:31 24 4
gpt4 key购买 nike

我正在尝试制作一个生成从 0 到 255(含)的随机数的程序。看起来很简单!我这样做了:

extern crate rand;
use rand::Rng;

fn main() {
println!("Guess the number!");
let random_number: u8 = rand::thread_rng().gen_range(0, 255);

println!("Your random number is {}", random_number);
}

这工作正常,但这种方法的问题是 the number 255 will not be included :

The gen_range method takes two numbers as arguments and generates a random number between them. It’s inclusive on the lower bound but exclusive on the upper bound.

当我尝试这样做时:

let random_number: u8 = rand::thread_rng().gen_range(0, 256);

Rust 将生成警告,因为 u8 只接受 0 到 255 之间的值。

warning: literal out of range for u8
--> src/main.rs:6:61
|
6 | let random_number: u8 = rand::thread_rng().gen_range(0, 256);
| ^^^
|
= note: #[warn(overflowing_literals)] on by default

如何在不更改 random_number 变量类型的情况下解决这个问题?

最佳答案

使用 gen方法代替。此方法将从指定类型的整组可能值中生成一个随机值。

extern crate rand;

use rand::Rng;

fn main() {
println!("Guess the number!");
let random_number: u8 = rand::thread_rng().gen();

println!("Your random number is {}", random_number);
}

关于random - 生成一个从 0 到 255(含)的随机 u8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47724024/

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