Функция from_le_bytes
Функция from_le_bytes принимает массив байтов
и возвращает целое число, собранное из этих байтов
в порядке little-endian. Иными словами, первый байт
массива считается младшим байтом числа. Функция
является ассоциированной функцией числовых типов,
таких как u16, u32, u64,
i16, i32, i64, i128
и usize. Параметром функция принимает массив
байтов фиксированной длины, соответствующей размеру
целевого типа.
Синтаксис
type::from_le_bytes(bytes)
Пример
Давайте соберём число типа u32 из массива
байтов в порядке little-endian:
fn main()
{
let bytes: [u8; 4] = [0x78, 0x56, 0x34, 0x12];
let res = u32::from_le_bytes(bytes);
println!("{}", res);
}
Результат выполнения кода:
305419896
Пример
Давайте соберём число типа u16 из двух байтов:
fn main()
{
let bytes: [u8; 2] = [0x01, 0x02];
let res = u16::from_le_bytes(bytes);
println!("{}", res);
}
Результат выполнения кода:
513
Пример
Давайте соберём знаковое число типа i32
из массива байтов:
fn main()
{
let bytes: [u8; 4] = [0xFF, 0xFF, 0xFF, 0xFF];
let res = i32::from_le_bytes(bytes);
println!("{}", res);
}
Результат выполнения кода:
-1
Смотрите также
-
функция
to_le_bytes,
которая преобразует число в массив байтов little-endian -
функция
from_be_bytes,
которая собирает число из байтов в порядке big-endian -
функция
from_ne_bytes,
которая собирает число из байтов в порядке платформы -
функция
parse,
которая преобразует строку в число