java A=B B=C A一定等于c,這句話對不對?
A=B B=C A一定等于c,這句話對不對?別怪我的話,前面是大寫C,后面是小寫C,絕對不相等。在數(shù)學公式方面,請注意精確性。在現(xiàn)實生活中,這個公式不一定是等價的。許多未知的特殊性會影響平衡。C語言中
A=B B=C A一定等于c,這句話對不對?
別怪我的話,前面是大寫C,后面是小寫C,絕對不相等。在數(shù)學公式方面,請注意精確性。在現(xiàn)實生活中,這個公式不一定是等價的。許多未知的特殊性會影響平衡。
C語言中,a=b=c,a=b==c,a==(b=c),a==(b==c)有什么區(qū)別?
“=”是賦值運算符,它將C的值賦給B和A。最后,A、B和C的值都相等。“=”是判斷運算符,結(jié)果是bool類型(結(jié)果只有0和1,只有對和錯)。第二,比較B和C是否相等,然后給a賦值,我就不多說了。你自己應該能夠理解別人。
C語言中,a=b=c,a=b==c,a==(b=c),a==(b==c)有什么區(qū)別?
C語言與其語言區(qū)域賦值運算符和相等運算符相同。C語言area=assignment==equal操作表示a=b=C。表達式運行后,為b和C賦值,ABC值相等。A=b==C。對于復合表達式,首先為b賦值。如果等于C,則返回0,否則返回非零值。A==(b=C)對于復合表達式,如果等于A和C,則返回0,否則返回非零值A==(b==C),復合表達式先比較b和C,然后返回0,否則返回非零值。比較a和(b==C)返回值(注意在出錯前比較a和b或C,希望LZ注意)看C區(qū)域=follow==雖然新手很麻煩,容易出錯,但他熟悉心理賦值語句。他喜歡PS:LZ程序風格,習慣引用stdio。H.他想修改我的程序:include<stdio。H>intmain(){inta=1,B=2,C=3print F(%d%d%d%d%dn”,a=B=C,a=B==C,a==(B=C),a==(B==C))return0}運行結(jié)果:3,0,0,0
首先,因為“=”符號的優(yōu)先級高于“=”,B==C首先執(zhí)行,顯然B和其他2,C和其他3不相等,所以它是0(邏輯運算,當B不等于C時,這個方程的值為假,即0),然后執(zhí)行a=0,0的值被分配給a。
1。賦值語句本身是一個表達式,有一個返回值。它的返回值是分配給變量的值。例如,B=1將1賦給B,但它也是一個表達式。此表達式的返回值為1。
2. 賦值語句首先計算等號右邊的值,然后將右邊的值賦給左邊的變量
3。分析a=b=C,根據(jù)賦值語句的操作方式,計算右邊的表達式,即b=C。
4. 右邊的表達式B=C是賦值語句。首先,賦值B,B=1,然后返回這個表達式的值,即1。
5. 將1賦給a并返回a=1的值,即1。因為代碼不使用這個表達式的返回值,所以它被丟棄。