Rust メモ リテラル
Reference
ここにまとまっている
https://doc.rust-lang.org/reference.html#literals
文字列関連
文字列関連は6つ
- 文字リテラル
- 文字列リテラル
- Raw文字列リテラル ( rの後に0個以上の任意個の
#
と"
で囲う ) - バイトリテラル
- バイト文字列リテラル
- Rawバイト文字列リテラル ( brの後に0個以上の任意個の
#
と"
で囲う )
type | 例 | 値 | |
---|---|---|---|
文字 | char |
'A' |
'A' |
文字列 | &str |
"aaa" |
"aaa" |
Raw文字列 | &str |
r"aaa" , r#"aaa"# |
"aaa" |
バイト | u8 |
b'A' |
97 |
バイト文字列 | &[u8] |
b"aaa" |
[97, 97, 97] |
Rawバイト文字列 | &[u8] |
br#"aaa"# |
[97, 97, 97] |
Raw文字列リテラルは
- 複数行の文字列を書いたり
#
を付ければ"
をエスケープなしで書くとか\
でエスケープさせたくないとか
という時に使える。
整数
整数型は10種類
u8
u16
u32
u64
usize
i8
i16
i32
i64
isize
型の名前を数字の後につけると型が定まる。
1u8
で u8
, 10i32
で i32
型を宣言しているときや型が一意に定まるときは、サフィックスをつけなくても推論される。
任意の位置に_
を入れることができる
123_456 == 123456
プリフィックスとしては一般的な感じ
0x
で16進数0o
で8進数0b
で2進数
として扱う
浮動小数点数
f32
とf64
整数と同様に_
を任意の場所に入れられる。
整数と同様に型をサフィックスにすることで型を指定でき、指定しない場合は推論される。
値が溢れた場合は型エラーになる。