常量是指程式在執行過程中可能不會改變的固定值。這些固定值也稱為文字。 常量可以是任何基本數據類型,如整數常量,浮點常量,字元常量或字串文字。還有枚舉常數。
常量被視為常規變數,常量的值在定義之後是不能被修改的。
整數文字
整數文字(常量)可以是十進位或十六進制常數。首碼指定基數:十六進制的0x
或0X
,十進位的首碼不存在。
整數常量也可以具有分別為unsigned
和long
,使用U
和L
尾碼來表示。 尾碼可以是大寫或小寫,可以是任何順序。
以下是一些整數文字的例子:
212 /* 合法 */
215u /* 合法 */
0xFeeL /* 合法 */
以下是各種類型的整數文字的其他示例:
浮點文字
浮點文字具有整數部分,小數點,小數部分和指數部分。 您可以以十進位形式或指數形式表示浮點文字。
以下是浮點文字的一些示例:
3.14159 /* Legal */
314159E-5F /* Legal */
510E /* Illegal: incomplete exponent */
210f /* Illegal: no decimal or exponent */
.e55 /* Illegal: missing integer or fraction */
以十進位格式表示,則必須包括小數點,指數或兩者; 並且在使用指數形式表示時,必須包括整數部分,小數部分或兩者。有符號指數由e
或E
引入表示。
字元常數
字元文字用單引號括起來。例如,'x'
可以存儲在char
類型的簡單變數中。字元文字可以是一個簡單的字元(如'x'
),一個轉義序列(如'\t'
)或一個通用字元(如'\u02C0'
)表示。
在 C# 前面有一個反斜杠,有一些字元。 它們具有特殊的含義,它們用於表示像換行符(\n
)或標籤(\t
)。下麵列出的是一些轉義序列碼的列表:
轉義序列 | 含義 |
---|---|
\\ |
\ 字元 |
\' |
' 字元 |
\" |
" 字元 |
\? |
? 字元 |
\a |
警戒或響鈴 |
\b |
後退字元 |
\f |
換頁 |
\n |
新行 |
\r |
回車 |
\t |
水準製錶 |
\v |
水直製錶 |
\xhh . . . |
一個或多個數字的十六進制數字 |
以下是幾個轉義序列字元的示例:
using System;
namespace EscapeChar
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello\tWorld\n\n");
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:
100
Radius: 100, Area: 31415.9