第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

?238、請讀程序: int x=10; int y=x++; printf("%d,%d",(x++,y),y++); 則上面程序的輸出結(jié)果是____

?238、請讀程序: int x=10; int y=x++; printf("%d,%d",(x++,y),y++); 則上面程序的輸出結(jié)果是____

C
包小龍蝦 2018-09-10 20:30:54
238、請讀程序: int x=10; int y=x++; printf("%d,%d",(x++,y),y++); 則上面程序的輸出結(jié)果是____?A:11,10 B:11,11 C:10,10 D:10,1
查看完整描述

2 回答

已采納
?
onemoo

TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個贊

這又是道爛題!? 此題的正確答案是:輸出結(jié)果未定義。


我還是從頭說吧:

一開始 x 的初值為 10, y 的初值為 10(還記得吧,x++ 的值是 x 自增前的值)

然后就是函數(shù)調(diào)用,其中參數(shù)有:

  • (x++, y)? 這是逗號表達(dá)式,逗號表達(dá)式的值是右側(cè)那項(xiàng)的值

  • y++? ?別忘了這個表達(dá)式有自增的副作用,這個副作用何時發(fā)生可是與序列點(diǎn)有關(guān)呦

關(guān)鍵的、也就是這個題目錯誤的地方來啦: C 標(biāo)準(zhǔn)沒有規(guī)定調(diào)用函數(shù)時參數(shù)的求值順序(各個參數(shù)會以任意順序求值),而且每個參數(shù)求值后也不是序列點(diǎn)。

我想這樣一說你也就明白了:? 我根本就不知道 (x++, y) 和 y++ 這兩個參數(shù)哪個先算。再有,兩個參數(shù)求值之間不是序列點(diǎn),那我也不知道 y 是何時自增了。 所以我根本就不知道 (x++, y) 中 y 的值該是多少。


順便說下,能夠確定的是:

最后 x 的值會是 12

第二個打印出來的值是 10

查看完整回答
反對 回復(fù) 2018-09-12
?
慕九州5552665

TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超2個贊

11,10

這就是輸出內(nèi)容。

查看完整回答
反對 回復(fù) 2018-09-12
  • 2 回答
  • 1 關(guān)注
  • 3215 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號