使用 stdenvargs()

你可以使用 std::env::args() 函式訪問傳遞給程式的命令列引數。這將返回一個 Args 迭代器,你可以將其迴圈或收集到 Vec 中。

通過引數迭代

use std::env;

fn main() {
    for argument in env::args() {
        if argument == "--help" {
            println!("You passed --help as one of the arguments!");
        }
    }
}

收集到 Vec

use std::env;

fn main() {
    let arguments: Vec<String> = env::args().collect();
    println!("{} arguments passed", arguments.len());
}

如果你這樣呼叫你的程式,你可能會得到比你預期的更多的引數:

./example

雖然看起來沒有傳遞任何引數,但第一個引數( 通常 )是可執行檔案的名稱。這不是一個保證,所以你應該總是驗證並過濾你得到的引數。