Rust命令行程序参数解析与测试实战
1. 命令行参数传递与解析基础
在编写命令行程序时,参数传递是一个基础且重要的环节。我们可以向程序传递参数,例如传递 “Hello” 和 “world” 这两个参数:
$ cargo run Hello world -n
Args { inner: ["target/debug/echor", "Hello", "world", "-n"] }
通常,我们也会尝试将标志(flag)放在值(value)之前,但这样可能会出现问题:
$ cargo run -n Hello world
error: Found argument '-n' which wasn't expected, or isn't valid in this context
USAGE:
cargo run [OPTIONS] [--] [args]...
For more information try --help
这是因为Cargo会将 -n 视为自身的参数,而不是我们程序的参数。为了解决这个问题,我们需要使用两个连字符( -- )来分隔Cargo的选项:
$ cargo run -- -n Hello world
Args { inner: ["target/debug/echor", "-n", "Hello", "world"] }
Rust命令行参数解析与测试指南
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



