削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
タグ: 2017年版ソースエディター
Ef3 (トーク | 投稿記録)
タグ: 2017年版ソースエディター
157 行
Hello, rust!
</syntaxhighlight>
 
=== データー型 ===
Restには豊富なデーター型(''Data Types'')があり、それらを組み合わせて新しい型を作ることができます<ref>{{Cite web
|url=https://doc.rust-lang.org/book/ch03-02-data-types.html
|title=Data Types - The Rust Programming Language
|accessdate=2021/12/08
}}</ref>。
 
==== スカラー型(''Scalar Types'') ====
スカラー型は単一の値を表します。Rustには、整数、浮動小数点数、論理値、文字という4つの主要なスカラ型があります。
 
===== 整数型(''Integer Types'') =====
Rustの整数型は、符号の有無とビット幅から12種類のバリエーションがあります。
;i8:符号付き8ビット整数
;u8:符号なし8ビット整数
;i16:符号付き16ビット整数
;u16:符号なし16ビット整数
;i32:符号付き32ビット整数
;u32:符号なし32ビット整数
;i64:符号付き64ビット整数
;u64:符号なし64ビット整数
;i128:符号付き128ビット整数
;u128:符号なし128ビット整数
;isize:符号付きでアーキテクチャーに自然な整数
;usize:符号なしでアーキテクチャーに自然な整数
::isizeとusizeのビット幅はプロセッサーのアーキテクチャーによって定義され、32ビットプロセッサーならば32、64ビットプロセッサーならば64です。
 
===== 整数リテラル(''Integer literals'') =====
リテラル(''Literals'')とは、プログラミングのソースコードで使用される、数値や文字列などのデーターを直接表現したものです。
 
:{| class=wikitable
|+ 様々な整数リテラル
!基数!!表現
|-
!10
|19_800
|-
!16
|0xbadbeef
|-
!8
|0o777
|-
!2
|0b101_111_011
|-
!バイト(u8のみ)
|B'Q'
|}
:数値リテラルには、123u8 の様に型名をタイプサーフィックス(''type suffix'')として補うことで、ビット幅を明記できます(オプショナル)。
::指定されない場合は(バイト以外は)i32が仮定されます(isizeではありません)。
:数値リテラルには、読みやすさのため 9_281_636 のように、アンダースコア _ を補うことができます(オプショナル)。
 
===== 浮動小数点数型(''Floating-Point Types'') =====
Rustの浮動小数点数型には、f64 と f32 があり、サイズを明示しないと f64 になります。
浮動小数点数は、IEEE-754規格に従います。
 
===== 論理値型(''The Boolean Type'') =====
Rustの論理値型の型名は '''bool'''、真の値は '''true''' 偽の値は '''false''' です。
 
===== 文字型(''The Character Type'') =====
Rustの文字型の型名は '''char''' です。
char は Unicode のサロゲートペアであっても保持できます。
<!-- 文字と文字列については機会を改めて説明したいと思います。が、Unicodeの暗黒面の解説になりがちなので躊躇 -->
 
==== 複合型(''Compound Types'' ====
===== 型(''The Tuple Type'') =====
===== 配列型(''The Array Type'') =====
 
=== ムーブセマンティクスとコピーセマンティクス ===
 
=== 識別子 ===