我們在一起學c#(六)中學習了整型、浮點型、decimal型、布林型和字元型的變數,也了解了每個型別用來儲存什麼樣的資料,換個角度說,我們知道了什麼樣的資料需要定義哪種型別的變數來儲存它。比如,可以通過「char ch = 'a';」這條語句把字元'a'儲存在變數ch裡。
其實,還有乙個關於字元的坑,早晚會讓我們掉進去,讓我們來看看。假如,我們想在字元變數裡存放乙個單引號,可不可以這樣寫:
char ch = ''';
用兩個單引號,把乙個單引號引在中間,我們的本意是把乙個單引號賦值到變數ch中,但是,這樣寫是有問題的。
我們已經知道,任何c#**,如果想要執行,第一步就需要進行編譯,在編譯的時候,編譯器讀取到三個連續的單引號時,認為單引號不匹配,就會報錯,我們的程式就沒有辦法繼續執行了。
為了避免這個誤會,編譯器規定了乙個轉義字元「\」(反斜線),,當這個字元出現的時候,與它緊連的字元跟這個轉義字元一起被看作是乙個字元,所以單引號在**中應該寫成返斜線加上乙個單引號,「\'」,所以上面的**需要改為:
char ch = '\'';
這樣,編譯器把「\'」看作是「'」,就不會報錯了。同理,雙引號、反斜線等都需要使用轉義字元,如「\"」、「\\」。
還有一些特別的字元,叫做控制字元,如「\n」、「\t」等,我們寫乙個程式來看看它們的用法。
using system;
namespace csdn.blog.areosea
}}
執行結果:
這是第一行文字。
這是第二行文字。
第一行 這是第一行。
第2行 這是第二行。
第一條輸出語句,通過「\n」進行了換行,所以顯示在螢幕上的文字被分成了兩行。第二條輸出語句輸出了乙個空行,便於看清演示結果。第三條和第四條輸出語句,通過使用「\t」,儘管第一列的長度不一致,但使第二列做到了上下對齊。
我們學習的這些變數,是c#預定義的值型別的變數,另外還有兩種變數,是c#預定義的引用型別的變數,它們分別是object和string型別。
1.objec型別
是乙個最基本的型別,它可以執行許多一般用途的基本方法,如equals()等等。在以後還會詳細學習。
2. string型別
比如,在寫程式的時候,我們並不知道使用者登入系統時會使用什麼樣的名稱,如果需要在登入後給使用者乙個歡迎資訊,就需要把歡迎詞和使用者登入時使用的名稱合併起來。我們還是通過例子來了解一下吧。
using system;
namespace csdn.blog.areosea
}}
執行結果:
請輸入登入名,然後按回車鍵:aerosea
aerosea,歡迎你登入系統!
通過連線兩個字串name和welcome,我們順利完成了歡迎資訊的顯示工作。
然後,我們可能又遇到了乙個坑,如果使用者只輸入了乙個回車,沒有輸入使用者名稱,螢幕上會顯示什麼?
請輸入登入名,然後按回車鍵:
,歡迎你登入系統!
對,就是這個樣子,不太好看吧。顯得我們的程式有些傻傻的,人家什麼都沒說,它還傻傻地歡迎。
我們隨後就學習怎樣對付這個坑。
一起學C 二
第二章 核心c 第1節,第乙個c 程式。這個程式是你現在包括以後能看到的所有c 程式中最最簡單的,它的功能就是在螢幕上顯示一串字元,然後等待執行它的人敲一下回車鍵後結束。想把這個程式從頭到尾做一遍,對乙個沒有程式設計經驗的人來說,也是乙個不容易的工作。我們先來說說這裡面有哪些坑。1.windows自...
一起學C 三
第二章 核心c 第一節,第乙個c 程式。第乙個程式成功執行了,我們來看看 都是由什麼組成的,它們都做了些什麼。using system namespace wrox 1.第1行,using system using是關鍵字,想要使用這個功能,就必須使用using這個關鍵字。c 中有很多關鍵字,每乙個...
一起學C 七
作為程式設計師,生來就要服務於客戶,善於滿足客戶提出的各種各樣稀奇古怪的要求。今天,有乙個客戶對我們說 我從小心算能力就差,你們能不能給我寫乙個程式,幫我提高心算能力?我的要求不算高,你們只要給我出幾道兩個整數的加法題,每個數不大於100,先讓我心算,然後再把正確答案顯示在螢幕上就行了。我們看看這個...