簡體   English   中英

如何找出數字類型在C#中是帶符號還是無符號

[英]How to find out if a numeric type is signed or unsigned in C#

我想通過反射來了解有關字段類型的詳細信息。

我知道我可以使用Type.IsValueType來確定它是一個值類型。 但是從那里我怎么知道它是一個數字? 定點數? 簽名還是未簽名?

是否有類似Type.IsSigned東西?

沒有很多無符號的數字類型,所以為什么不組成一個數字列表:

if (new Type[] { typeof(ushort), typeof(uint), typeof(ulong), typeof(byte) }.Contains(type))
{
    // unsigned.
}

或者,如果您只想比較值(此處為o ):

if (o is ushort || o is uint || o is ulong || o is byte)
{
    // unsigned.
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM