Тип i64
Тип i64 - это целочисленный тип данных со знаком,
занимающий 64 бита (8 байт) памяти. Он может хранить
значения от -9_223_372_036_854_775_808 до
9_223_372_036_854_775_807 включительно.
Диапазон значений определяется формулой от -2^63
до 2^63 - 1. Данный тип удобно использовать
для работы с большими числами, которые не помещаются
в типы i8, i16 или i32.
По умолчанию при выводе типа с плавающей точкой
в Rust используется f64, а для целых чисел -
i32, поэтому для использования i64
необходимо явно указывать тип или суффикс.
Синтаксис
let x: i64 = 100;
let y = 100i64;
Пример
Давайте создадим переменную типа i64
и выведем её значение:
fn main()
{
let num: i64 = 9_000_000_000;
println!("{}", num);
}
Результат выполнения кода:
9000000000
Пример
Давайте выполним арифметические операции
над числами типа i64:
fn main()
{
let a: i64 = 5_000_000_000;
let b: i64 = 2_500_000_000;
let sum = a + b;
let diff = a - b;
println!("{}", sum);
println!("{}", diff);
}
Результат выполнения кода:
7500000000
2500000000
Пример
Давайте проверим минимальное и максимальное
значения типа i64 с помощью констант
i64::MIN и i64::MAX:
fn main()
{
println!("{}", i64::MIN);
println!("{}", i64::MAX);
}
Результат выполнения кода:
-9223372036854775808
9223372036854775807
Пример
Давайте приведём тип i64 к другим числовым
типам с помощью оператора as:
fn main()
{
let num: i64 = 1000;
let a = num as i32;
let b = num as f64;
println!("{}", a);
println!("{}", b);
}
Результат выполнения кода:
1000
1000