1、當乙個精度高的資料型別與乙個精度低的資料型別進行運算時,定義運算結果的變數型別必須與精度最高的變數型別相同。這是為了防止在運算過程中造成資料丟失。如下:
double a = 42.29;
int b = 4229;
int c = a + b;
console.writeline("c = ",c);
console.readkey();
"無法將型別'double'隱式轉換為'int'。"
正確**應如下:
double a = 42.29;
int b = 4229;
double c = a + b;
console.writeline("c = ",c);
console.readkey();
能輸出運算結果:c = 4271.29
2、關於靜態變數
在 c# 中沒有全域性變數的概念,所有變數必須由該類的例項進行操作,這樣做提公升了安全性,但是在某些情況下卻顯得力不從心。因此,我們在儲存一些類的公共資訊時,就會使用靜態變數。
static = value;
在變數之前加上 static 關鍵字,即可宣告為靜態變數。
3、方法的區域性變數必須在**中顯式初始化,之後才能在語句中使用它們的值。此時,初始化不是在宣告該變數時進行的,但編譯器會通過方法檢查所有可能的路徑,如果檢測到區域性變數在初始化之前就使用了它的值,就會產生錯誤。例如:
public static int main()
在這段**中,演示了如何定義 main(),使之返回乙個 int 型別的資料,而不是 void。但在編譯這些**時,會得到下面的錯誤訊息:
use of unassigned local variable 'd'
正確的做法是初始化它 int d = 0 或者其他值。 C 學習筆記2 C 引用 vs 指標
引用很容易與指標混淆,它們之間有三個主要的不同 1.不存在空引用。引用必須連線到一塊合法的記憶體。2.一旦引用被初始化為乙個物件,就不能被指向到另乙個物件。指標可以在任何時候指向到另乙個物件。3.引用必須在建立時被初始化。指標可以在任何時間被初始化。void swap int a,int b 這裡需...
學習筆記2 C 表示式
i,i 的區別 i 是加1之後的數值 i 是加1之前的數值 i 在前先取i,i在後先也先取i,一句話結果總會加1 int i 10 int m i 10 int n i 12 int k i 12 函式用於封裝,模組化程式設計的主要手段 if,if else,switch while true fa...
VSTO入門學習筆記2 C 基礎變數和轉義符
型別描述 允許的值 int整型 負20多億到正20多億 long 長整型比int大 float 浮點型 用來存小數 double 雙精度浮點型 比float範圍更大 char 字元型乙個unicode字元,儲存0 65535之間的整數 string 字串bool 布林型true和false 變數名稱...