C#變量
變量隻不過是給定到存儲區域,我們的程序可以操縱的名稱。在C#中的每個變量具有特定的類型,它確定大小和可變的存儲器的布局;存儲器內存儲的值的範圍;和該組操作能夠應用變量。
我們已經討論了各種數據類型。在C#提供的基礎類型可分為:
類型 | 例子 |
---|---|
整型 | sbyte, byte, short, ushort, int, uint, long, ulong and char |
浮點類型 | float 和 double |
十進製類型 | 十進製 |
布爾類型 | true 或 false,可分配 |
可空類型 | 可空數據類型 |
C#還允許定義類似的變量,如類,我們將在以後的章節涵蓋枚舉和引用類型變量的其他值類型。在這一章中,我們隻學習基本的變量類型。
C#的變量定義
在C#中的變量定義的語法是:
<data_type> <variable_list>;
在這裡,data_type必須包括char, int, float, double或任何用戶定義的數據類型等有效的C#的數據類型,並variable_list可以由用逗號分隔的一個或多個標識符名稱。
一些有效的變量定義如下所示:
int i, j, k; char c, ch; float f, salary; double d;
可以在定義時初始化變量:
int i = 100;
在C#中的變量初始化
變量初始化(賦值)等號後跟一個常量表達式。初始化的一般形式是:
variable_name = value;
變量可以初始化(分配初始值)在它們的聲明。初始化包括一個等號後跟一個常量表達式為:
<data_type> <variable_name> = value;
一些實例是:
int d = 3, f = 5; /* initializing d and f. */ byte z = 22; /* initializes z. */ double pi = 3.14159; /* declares an approximation of pi. */ char x = 'x'; /* the variable x has the value 'x'. */
這是一個良好的編程習慣正確初始化變量,否則程序有時會產生意想不到的結果。
試試下麵的例子中,這使得使用各類變量:
namespace VariableDefinition { class Program { static void Main(string[] args) { short a; int b ; double c; /* actual initialization */ a = 10; b = 20; c = a + b; Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c); Console.ReadLine(); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
a = 10, b = 20, c = 30
從用戶接收的值
在System 命名空間中的Console類提供了一個ReadLine()函數用於接收來自用戶的輸入,並將其存儲到一個變量。例如,
int num; num = Convert.ToInt32(Console.ReadLine());Convert.ToInt32()函數將用戶輸入數據轉換為int類型的數據,因為Console.ReadLine()接受字符串格式的數據。
在C#的左值和右值:
在C#有兩種表達式:
-
lvalue: 這是一個左值可能顯示為任一左側或賦值的右側的表達式。
-
rvalue: 這是一個右值可能出現在賦值的右側而不是左側的表達式。
變量是左值等都可能出現在賦值的左側。數字文字是右值,因此可能不會被分配的,不能出現在左側。下麵是一個有效的語句:
int g = 20;
但是,下麵不是一個有效的聲明,並會產生編譯時錯誤:
10 = 20;