課總結(jié))
c語言運(yùn)算符一、算數(shù)操作符、-、*、/、%求余數(shù)1、賦值2、在計(jì)算機(jī)中若/左邊是一個(gè)整數(shù)右邊也是一個(gè)整數(shù)那么除下來的數(shù)據(jù)只能保存整數(shù)。所以只要除號(hào)兩邊有一個(gè)小數(shù)就能輸出小數(shù)3、%求模求余數(shù)只有當(dāng)被除數(shù)是負(fù)數(shù)時(shí)余數(shù)才是負(fù)數(shù)二、賦值操作符1、 2、復(fù)合運(yùn)算符a 3 a a3 ----- 就是復(fù)合運(yùn)算符- * /三、單目操作符只需要一個(gè)運(yùn)算數(shù)1、 a :后置 自增1 等同于 a a 1a 前置單獨(dú)寫沒區(qū)別int a 10int b a; :先讓a b 再輸出結(jié)果為a 11 b 10。int b a則反之a(chǎn)-- --a 同理賦值的時(shí)候前置和后置顯示區(qū)別四、移位運(yùn)算符(針對(duì)二進(jìn)制補(bǔ)碼)1、左移將二進(jìn)制向左移右邊少了的再補(bǔ)左邊拋棄右邊補(bǔ)0int num 10;int n num 1;0000 1010 ------0001 0100 :n里面存了20但num依然是10左移幾次×2的幾次方。將1 移到最前面改變符號(hào)時(shí)未定義2、右移(相當(dāng)于除法)右移 時(shí)左邊補(bǔ)符號(hào)位原來是0就補(bǔ)0是1就補(bǔ)10000 1010 1 :0000 0101 5;負(fù)數(shù)在左右移的時(shí)候先寫原數(shù)據(jù)的補(bǔ)碼再求出移了后的補(bǔ)碼最后求原碼五、位操作符1、 按位與int a 11 0000 1011int b 7 0000 0111 int c a b 0000 0011 對(duì)應(yīng)的比特位上只要有0那么按位與的結(jié)果對(duì)應(yīng)位上就是02、|按位或0000 10110000 0111 |00001111 只要對(duì)應(yīng)的比特位上有1那么按位或的結(jié)果對(duì)應(yīng)位上就是13、~按位取反把1變成0把0變成1。取出來是補(bǔ)碼對(duì)a進(jìn)行按位取反~a-a14、^: 按位異或如果對(duì)應(yīng)位的比特位上二進(jìn)制不一樣則對(duì)應(yīng)位用1表示0000 1010 兩個(gè)一樣的比特位上的數(shù)字異或出來就是00011 1101…………0011 0111六、關(guān)系運(yùn)算符 、 、 、 、 、 !七、邏輯運(yùn)算符八、逗號(hào)表達(dá)式逗號(hào)表達(dá)式規(guī)則逗號(hào)表達(dá)式就是用逗號(hào)隔開的多個(gè)表達(dá)式。 逗號(hào)表達(dá)式會(huì)從左向右依次計(jì)算所有子表達(dá)式整個(gè)表達(dá)式的最終結(jié)果是最后一個(gè)子表達(dá)式的結(jié)果。運(yùn)算符的優(yōu)先級(jí)按照自己的邏輯加括號(hào)