75c3e9c23f
When CStr moves to core with an alias in std, this can link to `crate::ffi::CStr`. However, linking in the reverse direction (from core to std) requires a relative path, and that path can't work from both core::ffi and std::os::raw (different number of `../` traversals required).
641 B
641 B
Equivalent to C's char
type.
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. On modern architectures this type will always be either [i8
] or [u8
], as they use byte-addresses memory with 8-bit bytes.
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.