Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmNuTS 31 of 373 menu
◀ ▶

Суффиксы типов в Rust

Сразу после цифр можно дописать имя типа. Его называют суффиксом. Имя задает тип самого числа. Например, i64 задает тип i64:

let num = 100i64; println!("{}", num); // выведет 100

Суффикс u32 задает число без знака:

let num = 50u32; println!("{}", num); // выведет 50

Суффикс f32 задает узкое дробное:

let num = 3.14f32; println!("{}", num); // выведет 3.14

Суффикс f64 задает широкое дробное:

let num = 3.14f64; println!("{}", num); // выведет 3.14

Имя пишут так же, как тип: маленькими буквами.

Суффикс не обязателен. Тип уже написан слева, и число в него помещается:

let num: i64 = 100; println!("{}", num); // выведет 100

Без суффикса целое имеет тип i32, если оно в него входит и тип слева не написан:

let num = 50; println!("{}", num); // выведет 50

Если тип слева не написан и число в i32 не входит, в конце пишут имя более широкого типа:

let num = 3000000000i64; println!("{}", num); // выведет 3000000000

Дробь без суффикса имеет тип f64:

let num = 3.14; println!("{}", num); // выведет 3.14

Дан следующий код:

let num1: i64 = 10000000000; let num2: u32 = 50; let num3: f32 = 2.5; println!("{}", num1); println!("{}", num2); println!("{}", num3);

Скажите, соберется ли этот код без суффиксов.

Какой тип у числа 50, если суффикса после него нет и тип слева не написан?

Какой тип у числа 3.14, если суффикса после него нет и тип слева не написан?

Какой тип у записи 50u32?

Какой тип у записи 3.14f32?

Какой тип у записи 100i64?

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить