這段代碼打印出56嗎

時間:2022-07-20 03:28:45 筆試題目 我要投稿
  • 相關推薦

這段代碼打印出56嗎

  使用我的編譯器,下面的代碼int i=7; printf(“%d\n”, i++ *i++); 返回49?不管按什么順序計算, 難道不該打印出56嗎?

  盡管后綴自加和后綴自減操作符++ 和– 在輸出其舊值之后才會執行運算,但這里的“之后”常常被誤解。沒有任何保證確保自增或自減會在輸出變量原值之后和對表達式的其它部分進行計算之前立即進行。

  也不能保證變量的更新會在表達式“完成” (按照ANSI C 的術語, 在下一個“序列點” 之前, 參見問題3.7) 之前的某個時刻進行。

  本例中, 編譯器選擇使用變量的舊值相乘以后再對二者進行自增運算。

  包含多個不確定的副作用的代碼的行為總是被認為未定義。(簡單而言, “多個不確定副作用” 是指在同一個表達式中使用導致同一對象修改兩次或修改以后又被引用的自增, 自減和賦值操作符的任何組合。

  這是一個粗略的定義; 甚至都不要試圖探究這些東西在你的編譯器中是如何實現的(這與許多C 教科書上的弱智練習正好相反);

  正如K&R 明智地指出, “如果你不知道它們在不同的機器上如何實現, 這樣的無知可能恰恰會有助于保護你。”

【這段代碼打印出56嗎】相關文章:

這樣“打”法能不笑嗎?爆笑06-05

放棄這段感情的說說04-21

過濾HTML代碼08-29

撐過這段最難熬的日子說說12-13

這段婚姻我真的累了的說說11-24

電腦藍屏代碼大全08-14

你知道打羽毛球擊球后應怎么回動嗎11-30

對這段感情我已徹底失望的句子10-21

無法釋懷這段余情的感人句子摘錄10-19

參考文獻代碼大全03-24

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
免费一区二区中文字幕 | 亚洲国产中文在线二区三区 | 日韩亚洲欧美国产动漫在线观看 | 天天看片在线精品 | 真实国产普通话对白乱子子伦视频 | 欧美日韩免费专区在线 |