Code Fix

初級末尾にセミコロンを付けると戻り値が () になり E0308 になる › パターン1

末尾にセミコロンを付けると戻り値が () になり E0308 になる

Rustの関数は最後の行が式(セミコロン無し)であれば、その値をそのまま戻り値にします。

 1  fn double(n: i32) -> i32 {
 2      n * 2_
             ^
 3  }
 4  
 5  fn main() {
 6      println!("{}", double(3));
 7  }
error[E0308]: mismatched types expected `i32`, found `()`

空欄を埋めて実行を通す

広告
広告スロット(未設定)

末尾にセミコロンを付けると戻り値が () になり E0308 になる

セミコロンを付けるとその行は文(statement)になり、戻り値が空のタプル()に変わってしまいます。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)