簡短範例

以下是使用 Rust 語言的簡短範例程式:

fn main() {              // Program entry point
    let mut x: i32 = 6;  // Mutable variable binding
    print!("{x}");       // Macro for printing, like printf
    while x != 1 {       // No parenthesis around expression
        if x % 2 == 0 {  // Math like in other languages
            x = x / 2;
        } else {
            x = 3 * x + 1;
        }
        print!(" -> {x}");
    }
    println!();
}

這是「考拉茲猜想」的實作程式碼,考拉茲相信迴圈不管怎樣終會結束,但這尚未得證。您可以編輯該程式碼,試著輸入不同內容。

重要須知:

  • 解釋所有變數都是靜態的。試著移除 i32 來觸發型別推斷。接著嘗試改用 i8,並觸發執行階段的整數溢位現象。

  • let mut x 改為 let x,討論編譯器錯誤。

  • 說明如果引數與格式字串不符,print! 會如何呈現編譯錯誤。

  • 說明要輸出比單一變數更複雜的運算式時,需如何使用 {} 做為預留位置。

  • 向學生介紹標準程式庫,示範如何搜尋具有格式化迷你語言規則的 std::fmt。請務必確保學生熟悉如何在標準程式庫中搜尋。

    • 在殼層中,rustup doc std::fmt 會開啟本機 std::fmt 說明文件上的瀏覽器。