#include <stdio.h> #include <stdint.h> typedef union { float f; uint8_t bytes[4]; } FloatPacket; int main() { float input; scanf("%f", &input); FloatPacket packet; packet.f = input; for (int i = 0; i < 4; i++) { printf("Byte %d: %u", i, packet.bytes[i]); if(i < 3){ printf("\n"); } } return 0; }
Explanation
This simulates sending a float value over a byte-wise interface like UART or SPI, where you send each byte one at a time.
Why it’s important in firmware?
Solution Logic
Test Cases
Test Results
Input
1
Expected Output
Byte 0: 0 Byte 1: 0 Byte 2: 128 Byte 3: 63