【Rust】——項目實例:——命令行實例(一)

Rust 是一門現代系統級編程語言,它以安全、併發性好和高性能著稱。在本文中,我們將通過一個簡單的命令行示例來探索 Rust 的基本概念和技術。這個例子將展示如何創建一個基本的計算器應用程序,它可以執行加法、減法、乘法和除法運算。

首先,我們需要設置我們的開發環境。如果你還沒有安裝 Rust,你可以從官方網站下載並安裝它。一旦安裝完畢,你應該已經擁有了 cargo,這是 Rust 的默認構建和管理工具。cargo 可以幫你處理依賴關係管理、編譯和測試,大大簡化了項目配置的工作量。

接下來,我們開始編寫我們的第一個 Rust 程序。打開終端或命令提示符窗口,輸入以下命令來初始化一個新的 Cargo 包:

cargo new --bin calculator

這將在當前目錄下創建一個新的名爲 “calculator” 的目錄,其中包含兩個文件:`src/main.rs` 和 `Cargo.toml`。前者是我們將要編寫的代碼的主入口點;後者則是項目的配置文件。

現在進入 `src/main.rs` 文件,我們可以添加一些基本的結構體和函數來實現我們的簡單計算器功能。下面是一個基礎的版本:

use std::io;
use std::num::ParseIntError;

fn read_number() -> Result<i32, ParseIntError> {
println!("請輸入一個整數:");
let mut input = String::new();
io::stdin().read_line(&mut input)?;
Ok(input.trim().parse()?) // 從字符串轉換爲 i32 類型
}

fn main() {
// 操作循環
loop {
// 讀取第一個數字
let a = read_number().expect("無法解析輸入的第一個數字");

// 根據用戶選擇的不同操作獲取第二個數字
print!("\n選擇操作 (1: +, 2: -, 3: *, 4: /): ");
io::stdout().flush().unwrap(); // 確保輸出立即顯示到控制檯
let mut operator_choice = String::new();
io::stdin().read_line(&mut operator_choice).unwrap();
let operator_choice: u8 = match operator_choice.trim().to_string().as_str() {
"1" => Operation::Addition,
"2" => Operation::Subtraction,
"3" => Operation::Multiplication,
"4" => Operation::Division,
_ => continue, // 如果輸入無效則跳過這次迭代
};

// 讀取第二個數字
let b = read_number().expect("無法解析輸入的第二個數字");

// 進行相應的數學運算
match operator_choice {
Operation::Addition => println!("{} + {} = {}", a, b, a + b),
Operation::Subtraction => println!("{} - {} = {}", a, b, a - b),
Operation::Multiplication => println!("{} * {} = {}", a, b, a * b),
Operation::Division => println!("{} / {} = {:.0}", a, b, a / b), // 四捨五入到小數點後沒有位數
}
}
}

enum Operation {
Addition,
Subtraction,
Multiplication,
Division,
}

在這個例子中,我們使用了一個循環來不斷地詢問用戶想要進行的操作以及需要計算的兩個數字。每個操作都被定義爲一個枚舉成員,使得維護和擴展更加容易。

要運行此程序,只需導航到包含 `src/main.rs` 的目錄並輸入:

cargo run

這將構建並運行你的程序。每次運行時,你會被要求輸入兩個數字和一個操作。

儘管這個例子很簡單,但它展示了 Rust 中的一些關鍵特性,如錯誤處理、模式匹配和標準庫的使用。隨着你對 Rust 的瞭解加深,你可以繼續擴展這個例子,增加更多的特性和複雜的功能。例如,你可以實現科學計算器的功能,或者添加對浮點數的支持,甚至是圖形界面。

Rust 的安全性、性能和模塊化的設計使其成爲許多高性能應用程序的首選語言,尤其是在系統編程領域。通過實踐和不斷學習,你可以掌握這門強大的編程語言,並將它應用到各種各樣的項目中。

为您推荐