溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

(C#基本語法)1.符號與標(biāo)記

發(fā)布時間:2020-06-23 10:58:32 來源:網(wǎng)絡(luò) 閱讀:1928 作者:tallbig 欄目:編程語言
C++一樣,C# 程序也采用區(qū)分大小寫的自由書寫格式,編譯器會忽略多余的白空符;C# 也支持“\a”、“\n”和“\t”等轉(zhuǎn)移字符;C# 的每個語句也都以分號“;”結(jié)束;語句塊也用花括號對“{”和“}”來界定。參見下表:(紅色為C# 特有的)
C# 的符號與標(biāo)記
說明
符號與標(biāo)記
空白
空格SP
制表符
水平制表符HTTab)或垂直制表符VT
標(biāo)點
. , : ;
行結(jié)束符
回車CR
注釋
//、/*、*/、///、/**
預(yù)處理指令
#
{}
泛型
<> 
可空類型
?
字符
Unicode字符
轉(zhuǎn)移字符
\代碼
逐字符
@"……"@標(biāo)識符
數(shù)值后綴
d D、f Fl Llu LU、m M、u Uul UL
運算符
+、-*、/%、++、--、<、==>、?:??、()、……
1)文檔注釋符“///……”和“/**……*/
C# 除了支持C++的單行注釋“// ……”和定界注釋“/* …… */”外,還增加了與之對應(yīng)的如下兩種文檔注釋方式:
l 單行文檔注釋“/// ……”——是“// ……”方式的擴展,增加了一個斜線符“/”。
l 定界文檔注釋:“/** …… */”——是/* …… */方式的擴展,在起端增加了一個星號符“*”。
這兩種新注釋,都用于C# 項目說明文檔的自動提取和生成,說明文檔采用的是XML格式,由C# 編譯器自動生成。但是需要添加/doc編譯器選項,或在Visual StudioIDE中激活該功能。具體方法是:選“項目”菜單中的“*屬性”菜單項;在IDE中部打開的項目屬性頁中,選左列的“生成”選項,在右邊下部的“輸出”欄中,選中“XML文檔文件”復(fù)選框以激活文檔自動生成功能,還可以輸入或修改“輸出路徑”和文件名,缺省為項目的“bin\Debug”或“bin\Release”子目錄和“項目名.XML”。參見下圖:
(C#基本語法)1.符號與標(biāo)記
例如,C# 編譯器為不加任何注釋的HelloWorld項目所生成的說明文檔為:
// HelloWorld.XML
<?xml version="1.0"?>
<doc>
        <assembly>
                <name>HelloWorld</name>
        </assembly>
        <members>
        </members>
</doc>
如果你在Program類的定義前加上一行,在鍵入“///”后,系統(tǒng)會自動生成下面代碼中的灰色部分,然后你自己再添加綠色部分。
(C#基本語法)1.符號與標(biāo)記/// <summary>
(C#基本語法)1.符號與標(biāo)記/// Start class for simple HelloWorld
(C#基本語法)1.符號與標(biāo)記/// </summary>
則編譯器會自動生成如下說明文檔:
// HelloWorld.XML
<?xml version="1.0"?>
<doc>
        <assembly>
                <name>HelloWorld</name>
        </assembly>
        <members>
                <member name="T:HelloWorld.Program">
                        <summary>
                        Start class for simple HelloWorld
                        </summary>
                </member>
        </members>
</doc>
2)逐字符@
C# 新引進(jìn)的逐字符(verbatim character@,可以避免解析字符串中的轉(zhuǎn)移字符和標(biāo)識符中的關(guān)鍵字等:
l 逐字字符串verbatim string)——@"……",不解析其中的轉(zhuǎn)移序列。例如:
(C#基本語法)1.符號與標(biāo)記string fn = @"C:\Doc\data.txt";
l 逐字標(biāo)識符(verbatim identifier)——@標(biāo)識符,不解析標(biāo)識符,使關(guān)鍵字也可以用作變量名、類名和方法名等普通標(biāo)識符。例如:
(C#基本語法)1.符號與標(biāo)記int @for = 12;
3)可空類型符?
不能使用的對象,可以用設(shè)置其值為空null來標(biāo)識。但是基本值類型是不能賦值為空的,那會導(dǎo)致編譯錯誤。傳統(tǒng)的經(jīng)驗解決辦法是賦給其一個取值范圍之外的值,如“-1”(0xFFFFFFFF),但這種方法并不標(biāo)準(zhǔn)。
現(xiàn)在C# 給出了一種完美的解決方案——可空類型(nullable type):聲明值類型的變量時,在變量名后添加可空類型的問號符“?”,則該變量成為可空類型,可以被賦值為空。
C# 中,還可以通過可空類型的共用只讀屬性HasValue,來判斷可空類型變量是否為空。例如:
(C#基本語法)1.符號與標(biāo)記int? x = 123;
(C#基本語法)1.符號與標(biāo)記int? y = null;
(C#基本語法)1.符號與標(biāo)記if (x.HasValue) Console.WriteLine(x.Value); // 輸出123
(C#基本語法)1.符號與標(biāo)記if (y.HasValue) Console.WriteLine(y.Value); // 輸出
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI