RCIE-ジャンクのコード屋

主に自分のためにコーディングのTIPSを蓄積しています。

Rust 関数で処理に名前をつける fn

概要
  • 関数を作ると、処理に名前をつけることができる。
  • 関数を作成するには「fn」を使う。
  • 入れる値と出る値の種類(型)を指定する必要がある。

プログラム例

  • 関数の名前は「ワンワン」とする。
  • 関数に数値(i32)を渡すと、文字列(String)が出てくる。
  • 渡した数値の数だけ「ワン!」を繰り返す。
fn main() {
    println!("{}", ワンワン(10)); // 数値を変えてもよい
}

fn ワンワン(回数: i32) -> String {
    let mut 文字列 = String::new();
    for _ in 1..=回数 {
        文字列 += "ワン!";
    }
    文字列
}
解説
  • 関数「ワンワン」に 3 を与えると、文字列「ワン!ワン!ワン!」が出てくる。
  • 処理に名前を付けて関数を作ると、プログラムの意味が分かりやすくなる。
  • それぞれの行の意味は以下の通り。
fn ワンワン(回数: i32) -> String {
    // └ fn ワンワン ◁関数を作る。
    // └ 回数: i32 ◁変数「回数」を入力として受け取る。型は i32(整数)。
    // └ -> String ◁この関数は String(文字列)を出力する。
    let mut 文字列 = String::new();
    // └ let mut ◁編集可能な変数を作る。
    // └ String::new() ◁空っぽの文字列を変数に入れる。
    for _ in 1..=回数 {
    // └ for ◁繰り返し処理
    // └ _ in 1..=回数 ◁1~回数の間、繰り返す。
        文字列 += "ワン!";
        // └ 文字列に「ワン!」を連結する。
    }
    文字列
    // └ セミコロン(;)がないので、この関数の出力は「文字列」となる。
}
変数の型
  • 変数にはいくつかの種類がある。
fn 関数(引数: i32) -> String { }
// └ ここでいう i32 や String が変数の種類を表す。「型」という。
いろいろな型(抜粋)
型の名前 保持できる値 使いかた
i8 整数 -128~127 let 変数: i8 = -99;
i16 整数 -32,768~32,767 let 変数: i16 = -999;
i32 整数 -2,147,483,648~2,147,483,647 let 変数: i32 = -99999;
i64 整数 約-9.2×1018~9.2×1018 let 変数: i64 = -9999999999;
i128 整数 約-1.7×1038~1.7×1038 let 変数: i128 = -999999999999999999;
u32 正の整数 0~4,294,967,295 let 変数: i32 = 99999;
f64 実数 約-1.7×10308~1.7×10308 let 変数: f64 = 3.14;
bool true(真=1)・false(偽=0) let 変数名: bool = true;
String 文字列(長さはいくらでも) let 変数名: String = "あいうえお";