表示式是由運算元和運算子構成的
c#提供了大量的運算子,按需要運算元的數目來分,有一元運算子,二元運算子,三元運算子;按運算功能來分,有算術運算子,關係運算子,邏輯運算子,位運算子,賦值運算子,條件運算子,其他
注意:算術運算子中,
浮點型別的運算元也可以在%在運算;關係運算子用來比較兩個運算元的大小,結果為布林值;它要求運算元的資料型別為數值型;布林型別的值只能比較是否相等,不能比價大小,因為true和false沒有大小之分
邏輯與&和短路與&&的差別,短路與更高效,能判斷結果則不再繼續執行
注意:邏輯運算和位運算都有&,|,^,兩者之間的差別是:邏輯運算的運算元型別是布林型別,位運算的運算元型別是二進位制數按位與,或,異或
邏輯運算子包括:& | ^ && || !
位運算子包括:& | ^ ~ >> <<
按位異或運算可以用來加密文件
賦值運算子:
簡單賦值運算子和復合賦值運算子
簡單賦值運算子語法形式 : var op= exp
左值必須是乙個已定義的變數或物件,因為賦值運算就是將表示式的值存放到左值,因此左值必須是記憶體中已分配的實際物理空間。
當左值和右值的型別不一致時,如果從占用記憶體少的短資料型別向占用資料記憶體多的長資料型別賦值時,可以不做顯示的型別轉換,反之,則必須做強制型別轉換。
復合賦值運算子:+=,-=,*=,。。。。
表示式中的型別轉換
p34,更加詳細的可以在網上參考資料
總結:浮點型別的資料中,float,double不能自動轉化成decimal型別
其中乙個資料是無符號型別ulong,則除了有符號的sbyet,short,int,long不能轉換外,其他帶符號的都可以轉換
當發生資料丟失時,會丟失高位的資料
雖然char 型別屬於整數型別的一種,但卻不允許直接將乙個整型數賦給乙個char型別的變數,解決的方法就是用強制型別轉換
布林型別不能進行資料型別轉換
C 運算子與表示式
作用 用於處理四則運算 算術運算子包括以下符號 運算子術語示例結果 正號 33 負號 3 3 加 10 515 減10 55 乘10 550 除10 52 取模 取餘 10 31 前置遞增 a 2 b a a 3 b 3 後置遞增 a 2 b a a 3 b 2 前置遞減 a 2 b a a 1 b...
C 運算子與表示式
作用 用於處理四則運算 算術運算子包括以下符號 運算子術語示例結果 正號 33 負號 3 3 加 10 515 減10 55 乘10 550 除10 52 取模 取餘 10 31 前置遞增 a 2 b a a 3 b 3 後置遞增 a 2 b a a 3 b 2 前置遞減 a 2 b a a 1 b...
C 運算子與表示式
變數存資料,運算子處理資料,運算子與常量變數組合起來叫表示式,每個表示式都有值。運算子有三類 單目運算 帶乙個運算元 雙目運算 帶兩個運算元 三目運算 帶三個運算元 被賦值變數的值,就是整個表示式的值 a 的值為 5,整個表示式 a 5 的值也為 5 a 5 連續賦值運算從右向左 右結合性 先賦值 ...