日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

中國最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2

csharp教程

C# 數(shù)據(jù)類型

閱讀 (2194)

C# 數(shù)據(jù)類型

在 C# 中,變量分為以下幾種類型:

  • 值類型(Value types)
  • 引用類型(Reference types)
  • 指針類型(Pointer types)

值類型(Value types)

值類型變量可以直接分配給一個值。它們是從類 System.ValueType 中派生的。

值類型直接包含數(shù)據(jù)。比如 int、char、float,它們分別存儲數(shù)字、字母、浮點數(shù)。當(dāng)您聲明一個 int 類型時,系統(tǒng)分配內(nèi)存來存儲值。

下表列出了 C# 2010 中可用的值類型:

類型描述范圍默認(rèn)值
bool布爾值True 或 FalseFalse
byte8 位無符號整數(shù)0 到 2550
char16 位 Unicode 字符U +0000 到 U +ffff''
decimal128 位精確的十進制值,28-29 有效位數(shù)(-7.9 x 1028 到 7.9 x 1028) / 100 到 28 0.0M
double64 位雙精度浮點型(+/-)5.0 x 10-324 到 (+/-)1.7 x 103080.0D
float32 位單精度浮點型-3.4 x 1038 到 + 3.4 x 10380.0F
int32 位有符號整數(shù)類型-2,147,483,648 到 2,147,483,6470
long64 位有符號整數(shù)類型-923,372,036,854,775,808 到 9,223,372,036,854,775,807 0L
sbyte8 位有符號整數(shù)類型-128 到 1270
short16 位有符號整數(shù)類型-32,768 到 32,7670
uint32 位無符號整數(shù)類型0 到 4,294,967,2950
ulong64 位無符號整數(shù)類型0 到 18,446,744,073,709,551,6150
ushort16 位無符號整數(shù)類型0 到 65,5350

如需得到一個類型或一個變量在特定平臺上的準(zhǔn)確尺寸,可以使用 sizeof 方法。表達式 sizeof(type) 產(chǎn)生以字節(jié)為單位存儲對象或類型的存儲尺寸。下面舉例獲取任何機器上 int 類型的存儲尺寸:

namespace DataTypeApplication
{
   class Program
   {
      static void Main(string[] args)
      {
         Console.WriteLine("Size of int: {0}", sizeof(int));
         Console.ReadLine();
      }
   }
}

當(dāng)上面的代碼被編譯和執(zhí)行時,它會產(chǎn)生下列結(jié)果:

Size of int: 4

引用類型(Reference types)

引用類型不包含存儲在變量中的實際數(shù)據(jù),但它們包含對變量的引用。

換句話說,它們指的是一個內(nèi)存位置。使用多個變量時,引用類型可以指向一個內(nèi)存位置。如果內(nèi)存位置的數(shù)據(jù)是由一個變量改變的,其他變量會自動反映這種值的變化。內(nèi)置的 引用類型有:objectdynamicstring。

對象(Object)類型

對象(Object)類型 是 C# 通用類型系統(tǒng)(Common Type System - CTS)中所有數(shù)據(jù)類型的終極基類。Object 是 System.Object 類的別名。所以對象(Object)類型可以被分配任何其他類型(值類型、引用類型、預(yù)定義類型或用戶自定義類型)的值。但是,在分配值之前,需要先進行類型轉(zhuǎn)換。

當(dāng)一個值類型轉(zhuǎn)換為對象類型時,則被稱為 裝箱;另一方面,當(dāng)一個對象類型轉(zhuǎn)換為值類型時,則被稱為 拆箱。

object obj;
obj = 100; // 這是裝箱

動態(tài)(Dynamic)類型

您可以存儲任何類型的值在動態(tài)數(shù)據(jù)類型變量中。這些變量的類型檢查是在運行時發(fā)生的。

聲明動態(tài)類型的語法:

dynamic <variable_name> = value;

例如:

dynamic d = 20;

動態(tài)類型與對象類型相似,但是對象類型變量的類型檢查是在編譯時發(fā)生的,而動態(tài)類型變量的類型檢查是在運行時發(fā)生的。

字符串(String)類型

字符串(String)類型 允許您給變量分配任何字符串值。字符串(String)類型是 System.String 類的別名。它是從對象(Object)類型派生的。字符串(String)類型的值可以通過兩種形式進行分配:引號和 @引號。

例如:

String str = "w3cschool.cn";

一個 @引號字符串:

@"w3cschool.cn";

C# string 字符串的前面可以加 @(稱作"逐字字符串")將轉(zhuǎn)義字符(\)當(dāng)作普通字符對待,比如:

string str = @"C:\Windows";

等價于:

string str = "C:\\Windows";

@ 字符串中可以任意換行,換行符及縮進空格都計算在字符串長度之內(nèi)。

string str = @"<script type=""text/javascript"">
    <!--     -->
    </script>";

用戶自定義引用類型有:class、interface 或 delegate。我們將在以后的章節(jié)中討論這些類型。

指針類型(Pointer types)

指針類型變量存儲另一種類型的內(nèi)存地址。C# 中的指針與 C 或 C++ 中的指針有相同的功能。

聲明指針類型的語法:

type* identifier;

例如:

char* cptr;
int* iptr;

我們將在章節(jié)"不安全的代碼"中討論指針類型。

關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲专区视频 | 激情在线观看视频 | 日韩午夜高清 | 久久久久久久免费 | 91精品国产综合久久久久久丝袜 | 黄色一级片a | av 一区二区三区 | 47pao国产成永久免费视频 | 91一区二区在线 | 午夜av福利 | 国产精品一区在线观看 | 亚洲一区在线不卡 | 成人午夜网站 | 亚洲视频观看 | 亚洲精品观看 | 国产高清一区 | 成人在线视频网站 | 不卡欧美| 欧美亚洲激情 | 精品久久精品久久 | www.日韩视频 | 视频在线精品 | 亚洲欧美电影 | 国产欧美日韩综合 | 日日噜噜夜夜狠狠 | 久久久久久一区 | 国产伦精品一区二区三区 | 日日爱av| 在线观看国产精品视频 | 久久久女人 | 久久精品成人 | 国产精品一区在线播放 | 亚洲国内精品 | 91精品国产综合久久久亚洲 | www中文字幕 | 操操网| 日韩精品小视频 | 亚洲午夜视频在线观看 | 综合色婷婷一区二区亚洲欧美国产 | 五月天丁香综合久久国产 | 黄色av一区 |