有以下程序#includestruct ord{ int x,y;} dt[2]={1,2,3,4};mare(){struct ord*p=dt; p
有以下程序 #include<stdio.h> struct ord { int x,y;} dt[2]={1,2,3,4}; mare() { struct ord*p=dt; printf("%d,",++p->x); printf("%d\n",++p->y); } 程序的運行結(jié)果是______。
A.1,2
B.2,3
C.3,4
D.4,1
正確答案:B解析:本題主要考查了結(jié)構(gòu)體變量成員的引用,有三種形式來引用結(jié)構(gòu)體變量中的成員:(1)結(jié)構(gòu)體變量名.成員名:(2)指針變量名->成員名;(3)(*指針變量名).成員名。其中點號“.”稱為成員運算符;箭頭“->”稱為結(jié)構(gòu)指向運算符。由于p->x指向了結(jié)構(gòu)體的的成員x,而結(jié)構(gòu)體中x的值為1,因此自增后變?yōu)?,p->y指向了結(jié)構(gòu)體的成員y,而結(jié)構(gòu)體中y的值為2,因此自增后變?yōu)?,因此,選項B是正確的。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。