Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,690 questions

55,449 answers

573 users

How to define a petabyte constant in Rust

1 Answer

0 votes
/*
    In Rust, the largest primitive integer type is u64 (unsigned 64‑bit).
    Its maximum value is about 1.84 × 10^19.

    A petabyte fits comfortably:

        1 PiB = 2^50  = 1,125,899,906,842,624 bytes
        1 PB  = 10^15 = 1,000,000,000,000,000 bytes

    Rust allows:
      - bit shifting on integer literals
      - readable numeric literals with underscores
      - compile‑time constant evaluation
*/

// Binary petabyte (pebibyte), using a bit shift.
// 1u64 << 50 = 2^50 bytes.
pub const PETABYTE_PIB: u64 = 1u64 << 50;

// Decimal petabyte (SI petabyte), using a readable numeric literal.
pub const PETABYTE_PB: u64 = 1_000_000_000_000_000;

fn main() {
    println!("1 PiB = {} bytes", PETABYTE_PIB);
    println!("1 PB  = {} bytes", PETABYTE_PB);
}



/*
run:

1 PiB = 1125899906842624 bytes
1 PB  = 1000000000000000 bytes

*/

 



answered May 3 by avibootz
...