union aa
{
float f;
char ch[4];
}
union aa change;
change.f=12.45;
ch中存放的就是12.45的16进制字符串的表示
我能力有限描述的可能不是很清楚,希望高手们能理解
我知道c#中整数转化为16进制字符串是
int i=45;
string s=i.toString("X");
麻烦知道怎么做的,传授一下
9 个解决方案
#1
好像没有直接转的方法..
整数部分和小数部分分别转,再合并....
整数部分和小数部分分别转,再合并....
#2
不太明白搂主的意思 邦定
#3
能不能说的具体点,举个例什么的,谢谢
#4
string str = "";
byte[] arr = BitConverter.GetBytes(f);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
byte[] arr = BitConverter.GetBytes(f);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
#5
我的意思就是将浮点数用16进制字符串表示
如0.40000001,表示成4各字节的字符串为cdcccc3e
如0.40000001,表示成4各字节的字符串为cdcccc3e
#6
谢谢
#7
f是float类型
如果你直接输入0.40000001,默认为double,8字节
可以加后缀表示是float,如
string str = "";
byte[] arr = BitConverter.GetBytes(0.40000001F);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
//str cdcccc3e
如果你直接输入0.40000001,默认为double,8字节
可以加后缀表示是float,如
string str = "";
byte[] arr = BitConverter.GetBytes(0.40000001F);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
//str cdcccc3e
#8
恩,十分感谢
#9
过一会给你分,真的很感谢
#1
好像没有直接转的方法..
整数部分和小数部分分别转,再合并....
整数部分和小数部分分别转,再合并....
#2
不太明白搂主的意思 邦定
#3
能不能说的具体点,举个例什么的,谢谢
#4
string str = "";
byte[] arr = BitConverter.GetBytes(f);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
byte[] arr = BitConverter.GetBytes(f);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
#5
我的意思就是将浮点数用16进制字符串表示
如0.40000001,表示成4各字节的字符串为cdcccc3e
如0.40000001,表示成4各字节的字符串为cdcccc3e
#6
谢谢
#7
f是float类型
如果你直接输入0.40000001,默认为double,8字节
可以加后缀表示是float,如
string str = "";
byte[] arr = BitConverter.GetBytes(0.40000001F);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
//str cdcccc3e
如果你直接输入0.40000001,默认为double,8字节
可以加后缀表示是float,如
string str = "";
byte[] arr = BitConverter.GetBytes(0.40000001F);
foreach(byte bt in arr)
{
str += Convert.ToString(bt,16);
}
//str cdcccc3e
#8
恩,十分感谢
#9
过一会给你分,真的很感谢