Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

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.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
199 views
Welcome To Ask or Share your Answers For Others

1 Answer

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);

http://msdn2.microsoft.com/en-us/library/system.bitconverter.int64bitstodouble


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...