All submissions

Little Endian to Big Endian

 

#include <stdio.h>
#include <stdint.h>

uint32_t convert_endian(uint32_t value) {
    // Write logic to swap bytes
    uint32_t LSBtoMSB = ((value & 0x000000FF) << 24) |  // Move byte 0 to byte 3 position 
                        ((value & 0x0000FF00) << 8)  |  // Move byte 1 to byte 2 position
                        ((value & 0x00FF0000) >> 8)  |  // Move byte 2 to byte 1 position
                        ((value & 0xFF000000) >> 24);   // Move byte 3 to byte 0 position
 
    return LSBtoMSB;
}

int main() {
    uint32_t val;
    scanf("%u", &val);
    printf("%u", convert_endian(val));
    return 0;
}



 
Loading...

Input

305419896

Expected Output

2018915346