how do you set specific bits for a double?
For an int I'd do something like this:
public static int Value { get { return 0xfff8; } }
What should I do for double?
public static double Value { get { return 0xfff8; } }
I'm a bit concerned that I may get an implicit conversion from an int representation of 0xfff8 to the double floating point representation. However, I really want that 0xfff8 bit pattern regardless of the type.
解决方案
Look at the BitConverter class or go unsafe.
Unsafe example (untested):
public unsafe double FromLong(long x)
{
return *((double*)&x);
}
BitConverter example:
double d = BitConverter.Int64BitsToDouble(0xdeadbeef);