看板 Grad-ProbAsk 關於我們 聯絡資訊
前幾天在看轉學考題目 看到一題如下 #include <iostream> using namespace std; void main() { double *pdata; double data[3][5] = {{1,3,4,5,10}, {7,8,9,10,11}, {2,12,6,15,14}}; pdata = data[1]; cout << data[2][4] << endl; cout << pdata[3] << endl; cout << *(data+1)[1]+3<< endl; cout << pdata--[0] << endl; } 想請問最後一個輸出為什麼會是7,不太懂他的原理... 麻煩請指點,感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.197.116 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1510374706.A.FE8.html
TMDTMD2487: google i++ 跟 ++i 的差別 11/11 13:33
nat99up: --擺變數後面會先這行動作再減 11/11 15:51
alan23273850: 還蠻討厭這種題目的,一般寫程式都要求可讀性的說 11/11 21:37
TMDTMD2487: 考試麻,不過我覺得知道後置跟前置是有一點用的啦 11/11 22:18
TMDTMD2487: 不過也是你很care差那一點的效能就是了 11/11 22:19
neuviojl: 推可讀性 好奇真的有人會這樣寫程式嗎 11/11 23:59
aggress5566: 會不會有人這樣寫不知道 但如果看到推不出來應該程式 11/12 00:47
aggress5566: 也寫得不太好 11/12 00:48
wayneshiau: 感謝解答! 11/12 23:50