РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
119 of 1245 menu

Функция from_be_bytes

Функция from_be_bytes принимает массив байтов в порядке big-endian (старший байт идёт первым) и возвращает целое число соответствующего типа. Параметром функция принимает ссылку на массив байтов [u8; N], где N - размер типа в байтах. Функция является ассоциированной функцией числовых типов, таких как u8, u16, u32, u64, u128, usize, i8, i16, i32, i64, i128 и isize.

Синтаксис

u16::from_be_bytes(bytes) u32::from_be_bytes(bytes) i32::from_be_bytes(bytes)

Пример

Давайте преобразуем массив байтов [0x12, 0x34] в число типа u16:

fn main() { let bytes: [u8; 2] = [0x12, 0x34]; let res = u16::from_be_bytes(bytes); println!("{}", res); }

Результат выполнения кода:

4660

Пример

Давайте преобразуем массив байтов [0x00, 0x00, 0x30, 0x39] в число типа u32:

fn main() { let bytes: [u8; 4] = [0x00, 0x00, 0x30, 0x39]; let res = u32::from_be_bytes(bytes); println!("{}", res); }

Результат выполнения кода:

12345

Пример

Давайте преобразуем массив байтов [0xFF, 0xFF, 0xFF, 0xFF] в число типа i32:

fn main() { let bytes: [u8; 4] = [0xFF, 0xFF, 0xFF, 0xFF]; let res = i32::from_be_bytes(bytes); println!("{}", res); }

Результат выполнения кода:

-1

Смотрите также

  • функция from_le_bytes,
    которая преобразует байты в little-endian порядке в число
  • функция to_be_bytes,
    которая преобразует число в массив байтов big-endian
  • функция from_ne_bytes,
    которая преобразует байты в порядке платформы в число
  • функция to_le_bytes,
    которая преобразует число в массив байтов little-endian
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить