C#常量和文字
常數是指該程序可能無法在其執行期間改變的固定值。這些固定值也被稱為文字。常量可以是任何像一個整型常量,一個浮點常量,字符常量或字符串文字的基本數據類型。還有也可以是枚舉常量。
常量是一樣,隻是它們的值不能自己定義後進行修改常規變量處理(如:修改)。
整數字麵量
一個整數字麵量可以是十進製,八進製,或十六進製常數。前綴指定基或基數:0x或0X的十六進製,0表示八進製,並要求十進製冇有前綴標識。
一個整數文字(字麵量)也可以有一個後綴為U和L的組合,無符號和長分彆。後綴可以是大寫或小寫,並且可以以任意順序。
這裡是整數常量的一些例子:
212 /* Legal */ 215u /* Legal */ 0xFeeL /* Legal */ 078 /* Illegal: 8 is not an octal digit */ 032UU /* Illegal: cannot repeat a suffix */
以下是不同類型的整型常量的其他例子:
85 /* decimal */ 0213 /* octal */ 0x4b /* hexadecimal */ 30 /* int */ 30u /* unsigned int */ 30l /* long */ 30ul /* unsigned long */
浮點文本(字麵量)
浮點字麵值具有一個整數部分,一個小數點,一個小數部分,和一個指數部分。可以表示十進製形式或指數形式浮點文字。
下麵是浮點字麵值的一些例子:
3.14159 /* Legal */ 314159E-5L /* Legal */ 510E /* Illegal: incomplete exponent */ 210f /* Illegal: no decimal or exponent */ .e55 /* Illegal: missing integer or fraction */
同時采用十進製形式表示,則必須包括小數點,指數,或兩者並用而指數形式表示,必須包括整數部分,小數部分,或者兩者兼而有之。無符號的指數,通過e或E介紹
字符常量
字符文字用單引號,例如,'x',並可以存儲在char類型的一個簡單的變量。字符文字可以是一個普通的字符(例如,'x'),轉義序列(如“ '),或通用字符(例如,'u02C0')。
有一些字符在C#中,當前麵加一個反斜杠將有特殊的含義,它們被用來表示類似的換行符( )或製表符( )。在這裡,有一些這樣的轉義序列代碼的列表:
轉義序列 | 含義 |
---|---|
\ | 字符 |
' | ' 字符 |
" | " 字符 |
? | ? 字符 |
a | 警報或鈴 |
退格 | |
f | 換頁 |
換行符 | |
回車 | |
水平製表 | |
v | 垂直製表 |
ooo | 一到三位數字的八進製數 |
xhh . . . | 一個或多個數字的十六進製數 |
以下為例子來說明一些轉義字符序列:
namespace EscapeChar { class Program { static void Main(string[] args) { Console.WriteLine("Hello World "); Console.ReadLine(); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
Hello World
字符串字麵量
字符串文字或常量用雙引號“”或@“”。一個字符串包含類似於字符文字字符:普通字符,轉義序列和通用字符。
可以中斷長行到使用字符串,分離使用空格部分多行。
下麵是字符串的一些例子。所有的三種形式是相同的字符串。
"hello, dear" "hello, dear" "hello, " "d" "ear" @"hello dear"
定義常量
常量使用const關鍵字定義。用於定義一個常數的語法是:
const <data_type> <constant_name> = value;
下麵的程序演示定義和使用程序中的常數:
using System; namespace DeclaringConstants { class Program { static void Main(string[] args) { const double pi = 3.14159; // constant declaration double r; Console.WriteLine("Enter Radius: "); r = Convert.ToDouble(Console.ReadLine()); double areaCircle = pi * r * r; Console.WriteLine("Radius: {0}, Area: {1}", r, areaCircle); Console.ReadLine(); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
Enter Radius: 3 Radius: 3, Area: 28.27431