]> git.lizzy.rs Git - rust.git/blob - library/std/src/os/raw/char.md
Rollup merge of #83571 - a1phyr:feature_const_slice_first_last, r=dtolnay
[rust.git] / library / std / src / os / raw / char.md
1 Equivalent to C's `char` type.
2
3 [C's `char` type] is completely unlike [Rust's `char` type]; while Rust's type represents a unicode scalar value, C's `char` type is just an ordinary integer. This type will always be either [`i8`] or [`u8`], as the type is defined as being one byte long.
4
5 C chars are most commonly used to make C strings. Unlike Rust, where the length of a string is included alongside the string, C strings mark the end of a string with the character `'\0'`. See [`CStr`] for more information.
6
7 [C's `char` type]: https://en.wikipedia.org/wiki/C_data_types#Basic_types
8 [Rust's `char` type]: char
9 [`CStr`]: crate::ffi::CStr