1、變數宣告語法:datatype identifier;
eg:int i;//該語句宣告了int變數i。如果在表示式中直接使用此變數會報錯,除非對該變數進行初始化。
2、宣告變數的方法
(1) int i;
i=1;//先宣告,在賦值(初始化)。
(2) int x=0;//宣告並初始化他的值。
(3) int x=0,y=0;//在一條語句中可宣告多個變數,但所有的變數都必須具有相同的資料型別。
(4) int x=0;
bool y=false;//不同型別的變數宣告,必須放在不同的語句中。
3、變數的初始化
*變數在使用前必須初始化,若未初始化就使用則c#的編譯器會把它當做錯誤來開袋。
c#y有兩個方法可確保變數在使用前進行了初始化:
(1)類或結構中的字段變數,若沒有顯示初始化,則在建立這些變數時其預設值就是0,空之類的值。
(2)方法的區域性變數必須在**中顯式初始化,之後才能在語句中使用它們的值。編譯器如果檢測到區域性變數在初始化之前就使用了它的值,就會產生錯誤。
4、型別推斷
c#允許使用var 關鍵字來宣告變數,編譯器會根據變數的初始化值自動「推斷」變數的型別。
eg:int somenumber=0; 就變成 var somenumber=0;
型別推斷需要遵循一些規則:
(1)變數必須初始化。否則,編譯器就沒有推斷變數型別的依據。
(2)初始化器不能為空。
(3)初始化器必須放在表示式中。
(4)不能把初始化器設定為乙個物件,除非在初始器中建立乙個新物件。
宣告了變數,推斷出型別後,就不能改變變數型別了。
/*初始化器:int nums=new int 陣列後邊複製用的大括號就可以看成是『初始化器』。*/
5、變數的作用域
變數的作用域指的是可以訪問該變數的**區域。一般情況下,確定作用域遵循以下的規則:
(1)只要類在某個作用域內,其欄位(也稱為成員變數)也在該作用域內。
(2)區域性變數存在於表示宣告該變數的塊語句或方法結束的右花括號之前的作用域內。
(3)在for、while或類似語句中宣告的變數存在於該迴圈體內。
1、區域性變數的作用域衝突
同名的區域性變數不能再同一作用域內宣告兩次。
2、欄位和區域性變數的作用域衝突
某些情況下,可以區分名稱相同(儘管其完全限定的名稱不同)、作用域相同的兩個識別符號。
原因:c#在變數之間有乙個基本區分,它把在型別級別宣告的變數稱為字段,而把在方法中申請的變數看做區域性變數。
重新學習makefile
今天回顧了一下makefile,做下筆記 首先準備幾個簡單的檔案 add.c head.h main.c mul.c sub.c 然後第一版 makefile 然後第二版 gcc c main.c o main.o 然後第三版 makefile 的語法跟shell 很像 第四版 目標 依賴 tab ...
重新學習struts
這就是所謂的一邊工作一邊學習。今天準備把給公司寫個管理頁面,按照之前的路數,寫起來應該挺快,但是不太規範。也就沉下心來學習一下了。第二個學習的是,異常處理。也是在學校的時候,聽老師說過,struts2有提供乙個異常處理機制。平常我們有些異常處理,會在 中寫try catch。public strin...
mysql重新學習筆記
mysql命令複習 desc table 列式展示 alter add 增加列 delete和 truncate table的區別 1.delete dml語言 資料還可以找回來,恢復回來 逐條刪除 刪除速度要慢一些 可以有條件的刪除。delete from 表名 where 條件 2.trunca...