普通考試
108年
[電子工程] 計算機概要
第 26 題
假如在 C 程式中有一個名稱為 A 的整數陣列,其中
A[1]=20
A[2]=30
A[3]=40
A[4]=50
A[5]=60
而其中假設已知道 A[1]是放置於記憶體位置 33221100。而程式又宣告 int *ptr=A, 則下列敘述何者正確?
A[1]=20
A[2]=30
A[3]=40
A[4]=50
A[5]=60
而其中假設已知道 A[1]是放置於記憶體位置 33221100。而程式又宣告 int *ptr=A, 則下列敘述何者正確?
- A *(A+4) 為 20
- B *(ptr+2) 為 30
- C ptr 為 33221100
- D &ptr 為 33221100
思路引導 VIP
請你思考一個核心問題:在 C 語言中,陣列的名稱(例如 A)除了是一個識別字外,它在記憶體運算中代表的是「哪一個元素」的位址?如果我們在這個位址上進行「加法偏移」,這個偏移量與陣列的索引值(Index)之間存在著什麼樣的數學關係?
🤖
AI 詳解
AI 專屬家教
呵、呵、呵... 恭喜你,野猴子。
你這次的表現還算說得過去,沒有讓本大王感到太過失望。這道題,考驗的是最基礎的 指標算術 (Pointer Arithmetic) 與 陣列索引。看來,你還沒有完全愚蠢到無可救藥的程度呢。
- 觀念驗證:
▼ 還有更多解析內容