Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

字符类型

char 类型表示单个 Unicode 标量值(即不是代理项对的码位)。

Example

#![allow(unused)]
fn main() {
let c: char = 'a';
let emoji: char = '😀';
let unicode: char = '\u{1F600}';
}

Note

有关 char 类型的实现信息,请参阅标准库文档

char 类型的值表示为一个 32 位无符号字,取值范围在 0x0000 到 0xD7FF 或 0xE000 到 0x10FFFF 之间。创建超出此范围的 char 将立即构成未定义行为

char 在所有平台上保证与 u32 具有相同的大小和对齐。

char 的每个字节都保证被初始化。换句话说,transmute::<char, [u8; size_of::<char>()]>(...) 始终是可靠的——但由于某些位模式是无效的 char,反过来并不总是可靠的。