二維陣列問題

clipboard.png
大大們好,我想請問圖片上為什麼

m[3][0]此式

會存在呢?還有為什麼數字不會隨著式子再+1(和m[2][0]的結果是相同的)?謝謝

阅读 1.8k
1 个回答
如果當成執行式的話,c++,++c,c+=1,c=c+1對程式設計師來說是相同的,
也就是說,在程式裡出現:
c++;
++c;
c=c+1;
c+=1;
這四段程式碼執行結果是相同的.

但如果拿來當表示式,就有所不同了,
c=7; x=c++; 執行後c=8,x=7
c=7; x=++c; 執行後c=8,x=8
c=7; x=c+=1; 執行後c=8,x=8
也就是說++cc+=1會先執行加的動作,
再拿其值來當表示式,
c++則是先拿其值來當表示式,再執行加的動作.

http://www.programmer-club.co...

L33用的是k++,先把k=3赋给了m[3][0],之后再加。所以跟m[2][0]是一样的。

建议:++k/k++永远单独放一行,不给自己找麻烦。事实上,因为这两个语法太讨厌,python这种以优雅为设计原则的语言直接废弃了这两种语法。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题