int main() { float f = 12.2; char *p1; p1 = (char *)&f; printf (\"%d\", *p1); }
This outputs 51.
EDIT: According to the new markup you really truncate the float representation to its least significant byte (on little-endian machines)