union{ float real; }val float ft; uchar *p = (uchar*)&ft; p[0] = data[3]; p[1] = data[2]; p[2] = data[1]; p[3] = data[0]; val.real = ft;