仿 wordpress簡(jiǎn)述seo的應(yīng)用范圍
?如需得到一個(gè)類型或一個(gè)變量在特定平臺(tái)上的準(zhǔn)確尺寸,可以使用 sizeof 方法。表達(dá)式 sizeof(type) 產(chǎn)生以字節(jié)為單位存儲(chǔ)對(duì)象或類型的存儲(chǔ)尺寸。下面舉例獲取任何機(jī)器上 int 類型的存儲(chǔ)尺寸:
using System;namespace DataTypeApplication
{class Program{static void Main(string[] args){Console.WriteLine("Size of int: {0}", sizeof(int));Console.ReadLine();}}
}
?
引用類型
引用類型不包含存儲(chǔ)在變量中的實(shí)際數(shù)據(jù),但它們包含對(duì)變量的引用。
換句話說,它們指的是一個(gè)內(nèi)存位置。使用多個(gè)變量時(shí),引用類型可以指向一個(gè)內(nèi)存位置。如果內(nèi)存位置的數(shù)據(jù)是由一個(gè)變量改變的,其他變量會(huì)自動(dòng)反映這種值的變化。內(nèi)置的引用類型有:object、dynamic 和 string。
對(duì)象(Object)類型
對(duì)象(Object)類型 是 C# 通用類型系統(tǒng)(Common Type System - CTS)中所有數(shù)據(jù)類型的終極基類。Object 是 System.Object 類的別名。所以對(duì)象(Object)類型可以被分配任何其他類型(值類型、引用類型、預(yù)定義類型或用戶自定義類型)的值。但是,在分配值之前,需要先進(jìn)行類型轉(zhuǎn)換。當(dāng)一個(gè)值類型轉(zhuǎn)換為對(duì)象類型時(shí),則被稱為 裝箱;另一方面,當(dāng)一個(gè)對(duì)象類型轉(zhuǎn)換為值類型時(shí),則被稱為 拆箱。
object obj;
obj = 100; // 這是裝箱
動(dòng)態(tài)(Dynamic)類型
您可以存儲(chǔ)任何類型的值在動(dòng)態(tài)數(shù)據(jù)類型變量中。這些變量的類型檢查是在運(yùn)行時(shí)發(fā)生的。
聲明動(dòng)態(tài)類型的語法:
dynamic <variable_name> = value;
?例如:
dynamic d = 20;
字符串(String)類型
字符串(String)類型 允許您給變量分配任何字符串值。字符串(String)類型是 System.String 類的別名。它是從對(duì)象(Object)類型派生的。字符串(String)類型的值可以通過兩種形式進(jìn)行分配:引號(hào)和 @引號(hào)。
例如:
String str = "runoob.com";
一個(gè) @引號(hào)字符串:
@"runoob.com";
?C# string 字符串的前面可以加 @(稱作"逐字字符串")將轉(zhuǎn)義字符(\)當(dāng)作普通字符對(duì)待,比如:
string str = @"C:\Windows";
?等價(jià)于:
string str = "C:\\Windows";
?@ 字符串中可以任意換行,換行符及縮進(jìn)空格都計(jì)算在字符串長(zhǎng)度之內(nèi)。
string str = @"<script type=""text/javascript"">
? ? <!--
? ? -->
</script>";
?用戶自定義引用類型有:class、interface 或 delegate。我們將在以后的章節(jié)中討論這些類型。
指針類型
指針類型變量存儲(chǔ)另一個(gè)類型的內(nèi)存地址,C#中的指針與C或C++中的指針有相同的功能,聲明指針類型的語法:
type* identifier;
例如:
char* cptr;
int* iptr;
C#類型轉(zhuǎn)換
類型轉(zhuǎn)換從根本上說是類型鑄造,或者說是把數(shù)據(jù)從一種類型轉(zhuǎn)換為另一種類型。在 C# 中,類型鑄造有兩種形式:
隱式類型轉(zhuǎn)換 - 這些轉(zhuǎn)換是 C# 默認(rèn)的以安全方式進(jìn)行的轉(zhuǎn)換, 不會(huì)導(dǎo)致數(shù)據(jù)丟失。例如,從小的整數(shù)類型轉(zhuǎn)換為大的整數(shù)類型,從派生類轉(zhuǎn)換為基類。
顯式類型轉(zhuǎn)換 - 顯式類型轉(zhuǎn)換,即強(qiáng)制類型轉(zhuǎn)換。顯式轉(zhuǎn)換需要強(qiáng)制轉(zhuǎn)換運(yùn)算符,而且強(qiáng)制轉(zhuǎn)換會(huì)造成數(shù)據(jù)丟失。
下面的實(shí)例顯示了一個(gè)顯式的類型轉(zhuǎn)換:
namespace TypeConversionApplication
{class ExplicitConversion{static void Main(string[] args){double d = 5673.74;int i;// 強(qiáng)制轉(zhuǎn)換 double 為 inti = (int)d;Console.WriteLine(i);Console.ReadKey();}}
}
?
?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp2{public class Example{public static void Main(){int value = 12345678;//定義一個(gè)整數(shù)byte[] bytes = BitConverter.GetBytes(value);//定義一個(gè)字節(jié)數(shù)組,將整數(shù)轉(zhuǎn)為字節(jié)Console.WriteLine(BitConverter.ToString(bytes));//輸出字節(jié)數(shù)組if (BitConverter.IsLittleEndian){Console.WriteLine("你的電腦默認(rèn)為小端序排列字節(jié)");Array.Reverse(bytes);//如果電腦默認(rèn)小端序排列數(shù)組,那么反轉(zhuǎn)數(shù)組,轉(zhuǎn)為大段序排列}Console.WriteLine(BitConverter.ToString(bytes));//輸出字節(jié)數(shù)組,如果變化,說明電腦默認(rèn)是小端序排列int j = BitConverter.ToInt32(bytes, 0);Array.Reverse(bytes);Console.WriteLine("j:" + j );// Call method to send byte stream across machine boundaries.// Receive byte stream from beyond machine boundaries.Console.WriteLine(BitConverter.ToString(bytes));if (BitConverter.IsLittleEndian)Array.Reverse(bytes);Console.WriteLine(BitConverter.ToString(bytes));int result = BitConverter.ToInt32(bytes, 0);Console.WriteLine("Original value: {0}", value);Console.WriteLine("Returned value: {0}", result);Console.ReadKey();}}
?
?
namespace ConsoleApp2{public class Example{public static void Main(){int i = 75;float f = 53.005f;double d = 2345.7652;bool b = true;Console.WriteLine(i.ToString());Console.WriteLine(f.ToString());Console.WriteLine(d.ToString());Console.WriteLine(b.ToString());Console.ReadKey();}}
以下是各種類型的整數(shù)常量的實(shí)例:?
85 ? ? ? ? /* 十進(jìn)制 */
0213 ? ? ? /* 八進(jìn)制 */
0x4b ? ? ? /* 十六進(jìn)制 */
30 ? ? ? ? /* int */
30u ? ? ? ?/* 無符號(hào) int */
30l ? ? ? ?/* long */
30ul ? ? ? /* 無符號(hào) long */
浮點(diǎn)常量
一個(gè)浮點(diǎn)常量是由整數(shù)部分、小數(shù)點(diǎn)、小數(shù)部分和指數(shù)部分組成。您可以使用小數(shù)形式或者指數(shù)形式來表示浮點(diǎn)常量。
這里有一些浮點(diǎn)常量的實(shí)例:
3.14159 ? ? ? /* 合法 */
314159E-5L ? ?/* 合法 */
510E ? ? ? ? ?/* 非法:不完全指數(shù) */
210f ? ? ? ? ?/* 非法:沒有小數(shù)或指數(shù) */
.e55 ? ? ? ? ?/* 非法:缺少整數(shù)或小數(shù) */
?
字符常量
字符常量是括在單引號(hào)里,例如,‘x’,且可存儲(chǔ)在一個(gè)簡(jiǎn)單的字符類型變量中。一個(gè)字符常量可以是一個(gè)普通字符(例如 ‘x’)、一個(gè)轉(zhuǎn)義序列(例如 ‘\t’)或者一個(gè)通用字符(例如 ‘\u02C0’)。
在 C# 中有一些特定的字符,當(dāng)它們的前面帶有反斜杠時(shí)有特殊的意義,可用于表示換行符(\n)或制表符 tab(\t)。在這里,列出一些轉(zhuǎn)義序列碼:
?