codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <stdio.h> float FloatSign(float a) { union { float f; int i; } v; v.f = a; v.i = (v.i&0x80000000)|0x3F800000; /*0x3F800000 = 1.0f*/ return v.f; } void Test(float f) { printf("%f -> %f\n", f, FloatSign(f)); } int main() { Test(-1000.0f); Test(-1024.824f); Test(1.25f); Test(3.1415926535f); Test(-3.1415926535f); return 0; }
Private
[
?
]
Run code
Submit