C#下运算的问题
已知string DATAH和DATAL;
请问在C#中,int V = ((DATAH & 03H) *256 + DATAL) * 5.0/1024;这个公式该怎么写啊?
DATAH与03H(十六进制)运行&操作
请求大侠帮忙,呵呵!
如果DATAH和DATAL是数字字符串:
int datah = int.Parse(DATAH);
int datal = int.Parse(DATAL);
int v = ((DATAH & 03H) * 256 + DATAL) * 5.0/1024
16进制数值表示很简单,0x3...
但是string不能做&操作,必须转换为byte[]...这就有个问题,你必须先声明字符串的编码,在.NET中所有字符都是unicode编码,如果你不明确编码运算结果就不是你想要的...
先将DATAH和DATAL转成int
C# code:
public int Calculate(string DATAH)
{
return (Convert.ToInt64(DATAH & 03H) *256 + Convert.ToInt64(DATAL)) * 5.0/1024
}
看来理解有点问题...如果你这两个string只是数值的字符串表示形式,转换一下即可...
还有个问题,03H是什么?变量?常量?就算是十六进制数也出不来H啊……
还有十六进制和十进制混算……不出错都难,256十六进制写法是100,而十六进制的256换算成十进制是598看的好乱……
谢谢几位大侠
int V = Convert.ToInt32(((int.Parse(DATA
相关问答:
有个winform程序,使用c#+mysql,需要在一个窗体设置mysql自动删除功能,包括自动删除多少天之前的数据以及是否开启自动删除功能,我程序退出后,还怎么控制Mysql自己删除啊?是不是要用mysql的event来实现?c#可以调用mysq ......
21cn的邮箱,在outlook配置后可以正常收发邮件,可是我写在C#中就不行,换成其它邮箱,163很早注册的。可以发送。查了很久,没有找到原因,请高手帮忙解答。。。小弟,谢了。。代码如下:
private void SendMail ......
用"服务器控件名.Style.Add("display","")可以给这控件添加CSS,怎么样才能给读出来呢?
怎么都没人帮忙啊
人都死哪去了
控件ID.Style[HtmlTextWriterStyle.BackgroundColor]
控件 ......
有一台数据库服务器,客户端使用ADO.NET连接sql,使用ExecuteScalar执行SQL INSERT语句,然后客户端刷新不能查询到新INSERT的数据,过10秒左右才能查到新数据
什么原因
你做了缓存吗?
没做缓存
怎么会呢! ......