c语言符合运算符的运算顺序,二 如何学习C语言的运算符和运算顺序
該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓
C語言的運算功能十分豐富,運算種類遠(yuǎn)多于其它程序設(shè)計語言。因此,當(dāng)多種不同運算組成一個運算表達(dá)式,即一個運算式中出現(xiàn)多種運算符時,運算的優(yōu)先順序和結(jié)合規(guī)則顯得十分重要。
初學(xué)者往往對此感到非常困難,覺得C語言學(xué)習(xí)太繁雜,其實只要我們對此合理進(jìn)行分類,找出它們與我們在數(shù)學(xué)中所學(xué)到運算之間的不同點之后,記住這些運算也就不困難了,有些運算符在理解后更會牢記心中,將來用起來得心應(yīng)手,而有些可暫時放棄不記,等用到時再記不遲。
下面是所有的運算符按優(yōu)先級不同分類列表:(對不起,因為表格顯示不正常,已被我刪除大家可以看書上的)
表中列出15種優(yōu)先級的運算符,從高到低,優(yōu)先級為1 ~ 15,最后邊一欄是結(jié)合規(guī)則,除第2、3級和第14級為從右至左結(jié)合外,其它都是從左至右結(jié)合,它決定同級運算符的運算順序。
下面我們通過幾個例子來說明:
(1) 3*20/4%10 這個表達(dá)式中出現(xiàn)3種運算符,是同級運算符,運算順序按從左至右結(jié)合,因此先計算3 * 20=60,然后被4除,結(jié)果為15,最后是%(求余數(shù))運算,所以表達(dá)式的最終結(jié)果為15%10 = 5
(2)a = 3;b = 5;c =++ a* b ;d =a + +* b;
例子中的“;”是C語言的語句分隔符,執(zhí)行順序為從左到右,第1條語句執(zhí)行后a的值為3,第2條語句執(zhí)行后b的值為5,第3條語句中有兩個運算符前置+ +和*,按表中所列順序,+ +先執(zhí)行,*后執(zhí)行,所以+ + a執(zhí)行后,a的值為4,由于+ +為前置運算,所以a的值4參與運算,C的值為20,最后執(zhí)行第4條語句,由于a + +為后置運算,所以a值為4參與運算,使得d的值仍為20,而a參與運算后其值加1,值為5。
這個例子執(zhí)行后,a的值為5,b的值為5,c的值為20,d的值也是20。
(3)a = 3,b = 5,b+ = a,c = b* 5
例子中的“,”是逗號結(jié)合運算,上式稱為逗號表達(dá)式,自左向右結(jié)合,最后一個表達(dá)式的結(jié)果值就是逗號表達(dá)式的結(jié)果,所以上面的逗號表達(dá)式結(jié)果為40,a的值為3,b的值為8,c的值為40。
總結(jié)
以上是生活随笔為你收集整理的c语言符合运算符的运算顺序,二 如何学习C语言的运算符和运算顺序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言socket原理,Socket底层
- 下一篇: android封装网络请求界面,轻松搞定