Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#如何从double中提取字节_C#_Double_Byte_Long Integer - Fatal编程技术网

C#如何从double中提取字节

C#如何从double中提取字节,c#,double,byte,long-integer,C#,Double,Byte,Long Integer,如何从double类型中提取字节。我知道它有8个字节,就像long。如何创建一个long变量,该变量的字节数与double变量的字节数相同 double a = 1.5; long b = (long)a; // <- this returns 1 // i want to get this: 0 01111111111 1000000000000000000000000000000000000000000000000000 //which is 4609434218613702656 a

如何从
double
类型中提取字节。我知道它有8个字节,就像
long
。如何创建一个
long
变量,该变量的字节数与
double
变量的字节数相同

double a = 1.5;
long b = (long)a; // <- this returns 1
// i want to get this: 0 01111111111 1000000000000000000000000000000000000000000000000000
//which is 4609434218613702656 as long (I guess :) )
双a=1.5;

长b=(长)a;// 你可以这样得到它

double a = 1.5;
long l = BitConverter.ToInt64(BitConverter.GetBytes(a), 0);
它将是
4609434218613702656

正如哈罗德所建议的那样

var l2 = BitConverter.DoubleToInt64Bits(a);

也有可能

你可以这样得到它

double a = 1.5;
long l = BitConverter.ToInt64(BitConverter.GetBytes(a), 0);
它将是
4609434218613702656

正如哈罗德所建议的那样

var l2 = BitConverter.DoubleToInt64Bits(a);

也有可能

位转换器也有DoubleToInt64位,但位转换器也有DoubleToInt64位,但可能与