看板 TransCSI 關於我們 聯絡資訊
※ 引述《castin (調整自己)》之銘言: : ※ 引述《tim77928 (tim)》之銘言: : : 這題答案多少呢?可以請各位高手解給我看嗎?這類型題目還沒碰過= = : : 假設一個整數陣列宣告為int b[4][5][6], 一個整數的大小佔4Bytes, 此陣列的起始位址 : : 即b[0][0][0]的位址是在1000, 若此陣列是使用row major順序來儲存, 則b[2][3][4]的位址 : : 將會是_____, 若此陣列是使用color-major順序來儲存, 則b[1][2][3]的位址將會是_____. : : 麻煩各位了 : row major是由左到右計算~~ : b[2][3][4]=1000+[(2-0)*6*7+(3-0)*7+(4-0)]*4 : =1000+(84+21+4)*4 : =1000+109*4 : =1000+436=1436 : column major是由右到左計算~~ : 以此類推!! : 若有錯誤請高手修正!!謝謝!! ^ ^ 謝謝上篇推文的高手~~ 我知道自己的error在哪邊了!! 因為最近都在唸vb,因為這題才發現!! c語言宣告在[]裡的是陣列的大小~~ c語言: 預設從0開始 宣告在[]內的是陣列大小 ex:宣告a[2] --> 陣列內容是:a[0]、a[1] vb語言: 預設從0開始 []內的數值意義與c語言不同 ex:宣告a[2] --> 陣列內容是:a[0]、a[1]、a[2] 此題是c語言 如果是Dim開頭的宣告就是vb!! row major是由左到右計算~~ b[2][3][4]=1000+[(2-0)*5*6+(3-0)*6+(4-0)]*4 =1000+(60+18+4)*4 =1000+82*4 =1000+328=1328 謝謝大家的指正~~請多指教!!^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.118.180.107
tim77928:辛苦你了 06/06 23:44