2012-01-14 51 views
5

Trong C#Trong C# Có bất kỳ kiểu dữ liệu nào để lưu trữ giá trị thập lục phân không?

Tôi muốn Kiểm tra giá trị mà là ở định dạng nhị phân 8 bit (tức là 0000000a hoặc 00010ef0) là giữa phạm vi cụ thể ....

ví dụ (đây là mã ngôn ngữ C)

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

cùng cách tôi muốn kiểm tra giá trị thập lục phân là trong cơn thịnh nộ Do hay không ....

+0

Trong những gì datatype là giá trị thập lục phân được lưu trữ khi nó được thông qua vào mã ? char *? –

+1

Không có thứ gì như giá trị thập lục phân. Có các giá trị số nguyên có thể được hiển thị theo định dạng thập phân hoặc thập lục phân. – dtb

+0

ý nghĩa của việc kiểm tra "thập lục phân" là gì? Hex hoặc dec hoặc binary hoặc wathever chỉ là * reprentation * của giá trị. –

Trả lời

7

int temp=0x5; theo sau là if (temp >= 0xa || temp < 0x10ef0) trông giống như những gì bạn muốn.

Điều đó || có nghĩa là HOẶC tuy nhiên, bạn có thể muốn VÀ (&&).

Về cơ bản, tiền tố với 0x nói với trình biên dịch bạn đang xác định một cái gì đó trong hex.

5

Bạn có thể sử dụng các loại gia đình int:

int val=0x19; 
3

Trừ "printf" mã bạn gửi trong C biên dịch với những tác động tương tự trong C#:

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

nếu bạn cần phải đại diện trong C# một hằng số thập lục phân, tiền tố nó với 0x, như bạn được sử dụng để làm trong C.

3

Bạn có thể chuyển đổi các chuỗi giá trị hex để một số nguyên

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

và sau đó làm bài kiểm tra bình thường của bạn

if (hexvalue >=0 || hexvalue <10) 
    Console.WriteLine("hexvalue is between 0-10"); 
Các vấn đề liên quan