2015-06-16 46 views
-6

我有一个c#应用程序,其中我使用了字节数组。如果我尝试获取数组的长度,我将它作为十六进制值,如“0x0A”。我没有很多的转换,将其转换为十进制格式,但林不能够转换成十进制format.Pls参阅下面我的代码,并引导我,如何在c中将十六进制字节值转换为十进制数据#

byte a[] = {0x0A , 0x01 , 0x02 , 0x03 , 0x04 , 0x05 , 0x06 , 0x07 , 0x09 , 0x01}; 
byte b=a.Length; //now i get b length as 0x0A 

我试着用整数值也进行转换,但它不工作

+6

你为什么使用'byte b = a.Length'?你为什么不用'int b'或'var b'? –

+2

你是说当你将鼠标悬停在编辑器的'a.Length'上时,Visual Studio显示长度为0x0A? –

+2

你的代码甚至没有编译。我将它改为byte [] a = {0x0A,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x09,0x01}; int b = a.Length;并按预期返回b = 10。 – LInsoDeTeh

回答

4

在Visual Studio调试器中有一个选项以十六进制显示所有整数值 - 包括byte - 。

右键单击其中一个调试器显示窗口(如本地或手表),并取消选择内容菜单中的十六进制显示。

相关问题