在C#中是否有任何数据类型来存储十六进制值?

问题描述:

在C#在C#中是否有任何数据类型来存储十六进制值?

我想要查询其是8位二进制格式(即0000000A或00010ef0)在特定范围之间的值....

例如 (下面是C语言代码)

int temp=5; 
if (temp>=0 || temp<10) 
    printf("temp is between 0-10"); 

同样的方式我想检查十六进制值是由于愤怒或不....

+0

在什么数据类型是当它通过存储的十六进制值中的代码?字符*? – 2012-01-14 07:48:12

+1

有没有这样的事情作为一个十六进制值。有可以以十进制或十六进制格式显示的整数值。 – dtb 2012-01-14 08:01:52

+0

检查“十六进制”是什么意思?十六进制或十进制或二进制或只读是值的* reprentation *。 – 2012-01-14 08:23:13

int temp=0x5;其次是if (temp >= 0xa || temp < 0x10ef0)看起来像你想要的。

||表示OR,但是,您可能想要AND(&&)。

基本上,前缀0x告诉编译器你指定的东西在十六进制。

您可能使用int族类型:

int val=0x19; 

除的“printf”在C张贴代码与C#相同的效果编译:

int temp=5; 
    if (temp>=0 || temp<10) 
     Console.WriteLine("temp is between 0-10"); 

,如果你需要在C#中表示十六进制常数,与0x前缀它,因为你在C中使用。

您可以十六进制值的字符串转换为整数

int hexvalue = int.Parse(value.ToString(),System.Globalization.NumberStyles.HexNumber); 

,然后做你的正常测试

if (hexvalue >=0 || hexvalue <10) 
    Console.WriteLine("hexvalue is between 0-10");