假如在 C 程式中有一個名稱為 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正確答案
Cptr 為 33221100
D&ptr 為 33221100
答案與詳解
宣告 int *ptr=A 代表將指標 ptr 指向陣列 A 的首元素 A[0]。指標運算 *(ptr+2) 等同於 ptr[2],也就是 A[2]。題目已知 A[2]=30,故此敘述正確。
