📅  最后修改于: 2023-12-03 14:47:10.726000             🧑  作者: Mango
在许多编程语言中,从命令行读取参数是常见的任务。在 Rust 中,获取命令行参数很简单。
Rust 标准库包含了一个 std::env
模块,其中包含了一系列有关环境变量和命令行参数的函数。
在 Rust 中,传递给程序的第一个参数是程序本身的名称。其他参数通过 std::env::args()
函数获得,该函数返回一个 std::env::Args
迭代器,您可以使用该迭代器获得所有参数。
use std::env;
fn main() {
for arg in env::args() {
println!("{}", arg);
}
}
上述代码将打印出所有传递给程序的参数。
获取参数后,您可能需要对它们进行解析。一种通用的方法是使用 clap
库。clap
是一个命令行解析器,可帮助您轻松解析命令行参数和子命令。
要使用 clap
,您需要在 Cargo.toml
中添加以下依赖项:
[dependencies]
clap = "3.0.0-beta.3"
以下是使用 clap
解析参数的示例代码:
use clap::Clap;
#[derive(Clap)]
struct Args {
#[clap(short, long)]
name: String,
#[clap(short, long)]
age: u8,
}
fn main() {
let args = Args::parse();
println!("Name: {}, Age: {}", args.name, args.age);
}
在上述代码中,我们首先定义了一个 Args
结构体,该结构体包含两个字段 name
和 age
。然后在 main
函数中,我们使用 Args::parse()
函数解析命令行参数,并使用获得的 args
结构体打印所需的值。
这就是 Rust 中的命令行参数。如果您想了解更多信息,请参阅 Rust 标准库文档 和 clap
库文档。