## **C#常量**
常量是固定值,程序执行期间不会改变。
## **整数常量**
整数常量是十进制、八进制或十六进制的常量。
~~~
85 /* 十进制 */
0213 /* 八进制 */
0x4b /* 十六进制 */
30 /* int */
30u /* 无符号 int */
30l /* long */
30ul /* 无符号 long */
~~~
## **浮点常量**
一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。
~~~
3.14159 /* 合法 */
314159E-5L /* 合法 */
510E /* 非法:不完全指数 */
210f /* 非法:没有小数或指数 */
.e55 /* 非法:缺少整数或小数 */
~~~
## **字符常量**
转义字符
| 转义序列 | 含义 |
| --- | --- |
| \\ | \字符 |
| \' | '字符 |
| \" | "字符 |
| \? | ?字符 |
| \a | Alert或bell |
| \b | 退格 |
| \f | 换页符 |
| \n | 换行符 |
| \r | 回车 |
| \t | 水平制表符tab |
| \v | 垂直制表符tab |
| \ooo | 一到三位的八进制数 |
| \xhh... | 一个或多个数字的十六进制数 |
## **字符串常量**
字符串常量是括在`""`里,或者是在`@""` 里。
~~~
string a = "hello, world"; // hello, world
string b = @"hello, world"; // hello, world
string c = "hello \t world"; // hello world
string d = @"hello \t world"; // hello \t world
string e = "Joe said \"Hello\" to me"; // Joe said "Hello" to me
string f = @"Joe said ""Hello"" to me"; // Joe said "Hello" to me
string g = "\\\\server\\share\\file.txt"; // \\server\share\file.txt
string h = @"\\server\share\file.txt"; // \\server\share\file.txt
string i = "one\r\ntwo\r\nthree";
string j = @"one
two
three";
~~~
## **定义常量**
常量是用`const`关键字来定义的。
~~~
const <data_type> <constant_name> = value;
~~~