有以下程序 #include main() { int a=1, b=2, c=3, x; x=(a^b)&c; pri
有以下程序 #include <stdio.h> main() { int a=1, b=2, c=3, x; x=(a^b)&c; printf("%d\n",x); } 程序的運(yùn)行結(jié)果是
A.0
B.1
C.2
D.3
正確答案:D解析:在C語言中,整型數(shù)據(jù)在內(nèi)存中是按二進(jìn)制形式存放的,位運(yùn)算就是直接對這些二進(jìn)制進(jìn)行操作的一系列運(yùn)算符。例如題目中a、 b、c的值分別為1、2、3,那它們在內(nèi)存中存放的樣子就是:0001、0010、0011(由于數(shù)據(jù)不大,int類型本來要占4字節(jié)也就是32位二進(jìn)制的,這里就省寫為4位了)?!癪”運(yùn)算符的作用是:按位異或。意思是:兩個(gè)操作數(shù)對應(yīng)的二進(jìn)制位如果相異,則結(jié)果對應(yīng)的二進(jìn)制位為1,否則結(jié)果對應(yīng)二進(jìn)制位為0。所以0001^0010=0011?!?amp;”運(yùn)算符的作用是:位與。意思是:如果兩個(gè)操作
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。