.net 託管與非託管類型比較

下表列出了 .NET Framework 支持的一些值類型,簡要描述了每個類型,並指示 Visual Basic、C# 和 C++ 託管擴展中的相應類型。表中還包括 Object 和 String 類的項,這些項在許多語言中都有相應的關鍵字。

類別類名說明Visual Basic 數據類型C# 數據類型C++ 託管擴展數據類型JScript 數據類型
整數 Byte 8 位的無符號整數。 Byte byte char Byte
  SByte 8 位的有符號整數。

不符合 CLS。

SByte

無內置類型。

sbyte signed char SByte
  Int16 16 位的有符號整數。 Short short short short
  Int32 32 位的有符號整數。 Integer int int

- 或 -

long

int
  Int64 64 位的有符號整數。 Long long __int64 long
  UInt16 16 位的無符號整數。

不符合 CLS。

UInt16

無內置類型。

ushort unsigned short UInt16
  UInt32 32 位的無符號整數。

不符合 CLS。

UInt32

無內置類型。

uint unsigned int

- 或 -

unsigned long

UInt32
  UInt64 64 位的無符號整數。

不符合 CLS。

UInt64

無內置類型。

ulong unsigned __int64 UInt64
浮點 Single 單精度(32 位)浮點數字。 Single float float float
  Double 雙精度(64 位)浮點數字。 Double double double double
邏輯 Boolean 布爾值(真或假)。 Boolean bool bool bool
其他 Char Unicode(16 位)字符。 Char char wchar_t char
  Decimal 96 位十進制值。 Decimal decimal Decimal Decimal
  IntPtr 大小取決於基礎平臺(32 位平臺上爲 32 位值,64 位平臺上爲 64 位值)的有符號整數。 IntPtr

無內置類型。

IntPtr

無內置類型。

IntPtr

無內置類型。

IntPtr
  UIntPtr 大小取決於基礎平臺的無符號整數(32 位平臺上爲 32 位值,64 位平臺上爲 64 位值)。

不符合 CLS。

UIntPtr

無內置類型。

UIntPtr

無內置類型。

UIntPtr

無內置類型。

UIntPtr
類對象 Object 對象層次結構的根。 Object object Object* Object
  String Unicode 字符的不變的定長串。 String string String* String

 

 

平臺調用數據類型

 

Wtypes.h 中的非託管類型非託管 C 語言類型託管類名說明
HANDLE void* System.IntPtr 32 位
BYTE unsigned char System.Byte 8 位
SHORT short System.Int16 16 位
WORD unsigned short System.UInt16 16 位
INT int System.Int32 32 位
UINT unsigned int System.UInt32 32 位
LONG long System.Int32 32 位
BOOL long System.Int32 32 位
DWORD unsigned long System.UInt32 32 位
ULONG unsigned long System.UInt32 32 位
CHAR char System.Char 用 ANSI 修飾。
LPSTR char* System.StringSystem.StringBuilder 用 ANSI 修飾。
LPCSTR Const char* System.StringSystem.StringBuilder 用 ANSI 修飾。
LPWSTR wchar_t* System.StringSystem.StringBuilder 用 Unicode 修飾。
LPCWSTR Const wchar_t* System.StringSystem.StringBuilder 用 Unicode 修飾。
FLOAT Float System.Single 32 位
DOUBLE Double System.Double 64 位
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章