C#程序設(shè)計入門經(jīng)典之C#的基本語法

字號:

C#代碼的外觀和操作方式與C++和Java非常類似。初看起來,其語法可能比較混亂,不像書面英語和其他語言。但是,在C#編程中,使用的樣式是比較清晰的,不用花太多的力氣就可以編寫出可讀性很強的代碼。
    與其他語言的編譯器不同,無論代碼中是否有空格、回車符或tab字符(這些字符統(tǒng)稱為空白字符),C#編譯器都不考慮這些字符。這樣格式化代碼時就有很大的自由度,但遵循某些規(guī)則將有助于使代碼易于閱讀。
    C#代碼由一系列語句組成,每個語句都用一個分號來結(jié)束。因為空格被忽略,所以一行可以有多個語句,但從可讀性的角度來看,通常在分號的后面加上回車符,這樣就不能在一行上放置多個語句了。但一句代碼放在多個行上是可以的(也比較常見)。
    C#是一個塊結(jié)構(gòu)的語言,所有的語句都是代碼塊的一部分。這些塊用花括號來界定("{" 和 "}"),代碼塊可以包含任意多行語句,或者根本不包含語句。注意花括號字符不需要附帶分號。
    所以,簡單的C#代碼塊如下所示:
    {
    ;
    
    ;
    }
    其中部分并不是真正的C#代碼,而是用這個文本作為C#語句的占位符。注意在這段代碼中,第2、3行代碼是同一個語句的一部分,因為在第2行的末尾沒有分號。
    在這個簡單的代碼塊中,還使用了縮進格式,使C#代碼的可讀性更高。這不是我的發(fā)明,而是一個標準規(guī)則,實際上在默認情況下VS會自動縮進代碼。一般情況下,每個代碼塊都有自己的縮進級別,即它向右縮進了多少。代碼塊可以互相嵌套(即塊中可以包含其他塊),而被嵌套的塊要縮進得多一些。
    {
    ;
    {
    ;
    ;
    }
    ;
    }
    前面代碼的續(xù)行通常也要縮進得多一些,如上面第一個示例中的第3行代碼。
    注釋:
    在能通過Tools | Options訪問的VS Options對話框中,顯示了VS用于格式化代碼的規(guī)則。在Text Editor | C# | Formatting節(jié)點的子目錄下,包含了完整的格式化規(guī)則。此處的大多數(shù)設(shè)置都反映了還沒有講述的C#部分,但如果以后要修改設(shè)置,以更適合自己的個性化樣式,就可以回過頭來看看這些設(shè)置。在本書中,為了簡潔起見,所有的代碼段都使用默認設(shè)置來格式化。
    記住,這種樣式并不是強制的。但如果不使用它,讀者在閱讀本書時會很快陷入迷茫之中。
    在C#代碼中,另一個常見的語句是注釋。注釋并不是嚴格意義上的C#代碼,但代碼有注釋。注釋就是解釋,即給代碼添加描述性文本(用英語、法語、德語、外蒙古語等),編譯器會忽略這些內(nèi)容。在開始處理比較長的代碼段時,注釋可用于給正在進行的工作添加提示,例如“這行代碼要求用戶輸入一個數(shù)字”,或“這段代碼由Bob編寫”。C#添加注釋的方式有兩種??梢栽谧⑨尩拈_頭和結(jié)尾放置標記,也可以使用一個標記,其含義是“這行代碼的其余部分是注釋”。在C#編譯器忽略回車符的規(guī)則中,后者是一個例外,但這是一種特殊情況。