#include <stdio.h> #include <stdint.h> typedef union { uint32_t value; uint8_t bytes[4]; } Register; // Write logic here to extract bytes using union void print_bytes(uint32_t input) { Register Reg; Reg.bytes[4]={0}; Reg.bytes[0]|=(input&0xFF); Reg.bytes[1]|=((input>>8)&0xFF); Reg.bytes[2]|=((input>>16)&0xFF); Reg.bytes[3]|=((input>>24)&0xFF); for(int i=0;i<4;i++) { printf("%d ",Reg.bytes[i]); } printf("\n"); } int main() { uint32_t num; scanf("%u", &num); print_bytes(num); return 0; }
Test Cases
Test Results
Input
305419896
Expected Output
120 86 52 18