作者jerki (Dennis)
看板C_and_CPP
標題[問題] 二維陣列與指標
時間Fri May 28 23:50:57 2010
這是是考古題
int intArray[3][2] = {{10, 20}, {15, 25}, {50, 40}};
int ** intPtr1 = intArray;
int * intPtr2 = &intArray[1][1];
int * intPtr3[2] = &intArray[2];
intArray 的記憶體位址是0x0008600,int 為sizeof(int) = 4;
試回答下列問題(如果是正確的敘述請寫出左邊變數的數值,錯誤請說明原因,但
每題題目是有關連性的):
1. *intPtr2 = intArray[1][1];
25
2. intPtr1 + 1 = intArray[0];
疑問: 宣告的** intPtr1 = intArray; 有是不是問題?
陣列是一個指標,另一是二維指標
3. ++intPtr = &intArray[1];
這個我不懂耶,intPtr又沒宣告怎使用呢?
4. *(*intPtr + 1) = intArray[1][0];
這題也是
5. *(*intPtr3 + 1) = intArray[2][1];
15
多維指標跟陣列真的很難懂..,請板友指點,感謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.124.49.153
推 dendrobium:2.是有問題 3.題目打錯之類的 4.同三 05/29 01:12
→ dendrobium:題目如果"很明顯"打錯, 作答的時候可以考慮用假設的 05/29 01:13