命令行参数是指在运行程序时通过命令行传递给程序的值或选项;这些参数允许用户在启动程序时自定义程序的行为,而不需要修改代码。
以cargo
命令为例,通过给cargo
命令传递不同的参数以执行不同的功能:
cargo new app1
cargo new --lib lib1
cargo run
cargo build
在 Rust 中,可以使用标准库中的std::env::args()
函数获取命令行参数:
use std::env;
fn main() {
let args: Vec<String> = env::args().collect();
//let argc = args.len(); //参数数量
//println!("{}",args[0]); //程序路径,总是存在
//println!("{}",args[1]); //第一个参数,如果有
//println!("{}",args[2]); //第二个参数,如果有
//遍历打印参数索引、值
for (index, value) in args.iter().enumerate() {
println!("{} => {}", index,value );
}
}
使用cargo run
运行程序时添加--
;用于分隔cargo
的参数和你程序的参数;
程序运行效果:

对于复杂参数的处理,推荐使用clap
库;