Transmit Float as Byte Stream Using Union

Code

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

typedef union {
  float f;
  uint8_t bytes[4];
} FloatPacket;

int main() {
  float input;
  scanf("%f", &input);

  // Fill union and print 4 bytes
  FloatPacket fp;
  fp.f = input;

  for (int i = 0; i < 4; i++) {
    printf("Byte %d: %u\n", i, fp.bytes[i]);
  }

  return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

1

Expected Output

Byte 0: 0 Byte 1: 0 Byte 2: 128 Byte 3: 63