[103, 103, 64, 103, 103, 46, 99, 111, 109]
use as_bytes::AsBytes as _;
#[repr(C)]
struct Example {
a: u8,
b: u8,
c: u8,
d: u8,
}
let example = Example {
a: 1,
b: 2,
c: 3,
d: 4,
};
let example_bytes = unsafe { example.as_bytes() };
println!("{example_bytes:?}"); // [1, 2, 3, 4]то есть она возвращает слайс байт, то как структура в памяти выглядитто как структура в памяти выглядит
И вот именно представление этого указателя и 2 usize в памяти данный метод и вернёт, то есть слайс из 24 u8 (при условии 64bit платформы).
На диаграммах изображена структура формата указатель, длина и вес (это хранится в куче), а уже указатель ссылается на память в стеке в случае строкового литерала или любого числа, и на кучу если это String - это понятно.
Но в таком случае должна была бы вернуться стуктура побайтово, то есть указатель, длина и вес, а возвращаются данные на которые указатель указывает, поэтому я запутался.Вы так и не показали, на чём вызываете метод.