Register Type Aliases

#include <iostream>
#include <cstdint>
using namespace std;

// Step 1: Create the three type aliases here:
// using Reg8  = ...
using Reg8 = uint8_t;
// using Reg16 = ...
using Reg16 = uint16_t;
// using Reg32 = ...
using Reg32 = uint32_t;
int main() {
    uint64_t raw8, raw16, raw32;
    cin >> raw8 >> raw16 >> raw32;

    // Step 2: Store the values using the alias types:
    // Reg8  r8  = ...
    Reg8 r8 = static_cast<Reg8>(raw8);
    // Reg16 r16 = ...
    Reg16 r16 = static_cast<Reg16>(raw16);
    // Reg32 r32 = ...
    Reg32 r32 = static_cast<Reg32>(raw32);
    // Step 3: Print the formatted output:
    // Ensure values are printed numerically
    std::cout << "R8=" << static_cast<uint32_t>(r8) << " ";
    std::cout << "R16=" << static_cast<uint32_t>(r16) << " ";
    std::cout << "R32=" << static_cast<uint32_t>(r32);
    return 0;
}

Solving Approach

 

 

 

 

 

Upvote
Downvote
Loading...

Input

255 12345 987654321

Expected Output

R8=255 R16=12345 R32=987654321