Difference between data types (int8 and float)

You have it backwards. An int8_t takes only one byte. A float is always a multi-byte type.