#author("2020-05-29T08:30:14+00:00","","") #topicpath ////////////////////////////////////////////////////////////////////////////// * 目次 [#q4c0856c] #contents(); ////////////////////////////////////////////////////////////////////////////// * Rust [#q058373d] ////////////////////////////////////////////////////////////////////////////// * 文法 [#m0c5ee20] //============================================================================ ** 関数 [#function] - main 関数 fn main () { // 処理 } - 返り値がない関数 fn <関数名>( [<引数名> : <引数型> [,...]] ) { // 処理 } - 返り値がある関数 fn <関数名>( [<引数名> : <引数型> [,...]] ) -> <返り値型> { // 処理 } -- 返り値のある関数では、関数の最後の行が何を返すのかを決定する。 -- この最後の行にはセミコロンを付けない。(付けるとエラーになる) //============================================================================ ** 型 [#sf8df5d0] //---------------------------------------------------------------------------- *** 整数型 [#q51cd732] |~size |>|~type name | |~~|~signed |~unsigned | |8-bit |i8 |u8 | |16-bit |i16 |u16 | |32-bit |i32 |u32 | |64-bit |i64 |u64 | |arch |isize |usize | //---------------------------------------------------------------------------- *** 浮動小数点型 [#a5a073e4] |~size |~type name |~remark | |32-bit |f32 | | |64-bit |f64 |浮動小数点の標準型 | //============================================================================ ** 数 [#v232aede] //---------------------------------------------------------------------------- *** 整数リテラル [#kac55304] |~数値リテラル |~例 | |10進数 |98_222 | |16進数 |0xff | |8進数 |0o77 | |2進数 |0b1111_0000 | |バイト (u8だけ) |b'A' | //============================================================================ ** 値の代入 [#t3341f63] - ''変数束縛'' といい、 ''let'' を使用する - 例: -- x に値 5 を代入する let x = 5; -- x に値 1, y に値 2 を代入する let (x, y) = (1, 2); -- x の型を i32 と指定した上で、値 5 を代入する let x: i32 = 5; //============================================================================ ** マクロ [#v8cdba6f] - マクロの呼び出しは、関数呼び出しとは異なり、マクロ名の後ろに ''!'' を付ける。 println!("Hello World"); // 標準出力に文字を出力するマクロ println を実行 ////////////////////////////////////////////////////////////////////////////// * 開発 [#p7fe6a5c] - cargo (The Rust package manager) を使用する //============================================================================ ** プロジェクトの生成 [#q336705e] - 以下のコマンドで生成する $ cargo new <プロジェクト名> -- これで、カレントディレクトリ下に、ファイルが一式出力される //============================================================================ ** 実行 [#y9d0c32f] - プロジェクトのディレクトリにて、以下のコマンドで実行する $ cargo run ////////////////////////////////////////////////////////////////////////////// * 参考リンク [#links] - [[Rust 公式サイト>https://www.rust-lang.org/]] - [[Rust 日本語チュートリアル>https://doc.rust-jp.rs/book/second-edition/]] - [[slack 上の Rust チャンネル>https://rust-jp.herokuapp.com/]]