高考申論題
109年
[資訊處理] 程式語言
第 二 題
二、假設每個int變數占用4 bytes,每個指標變數也占用4 bytes。下面的C程式印出的結果為何?(25分)
# include
typedef int T1[10][9];
int main(){
struct {
T1 *a[10];
int (*b)[100];
} f[10][10][10];
printf("p1 = %d\n",(int)sizeof(f[1][5]));
printf("p2 = %d\n",(int)sizeof(f[2][3][4].a));
printf("p3 = %d\n",(int)sizeof(f[3][2][6].b));
printf("p4 = %d\n",(int)(f - &f[5]));
printf("p5 = %d\n",(int)(f[6][2] - f[3][3]));
}
📝 此題為申論題
思路引導 VIP
- 首先計算基礎單位的大小:
T1是int[10][9],所以sizeof(T1) = 10 * 9 * 4 = 360bytes。 - 計算結構(struct)的大小:
🤖
AI 詳解
AI 專屬家教
【考點分析】
本題考查 C 語言中 sizeof 運算子、多維陣列記憶體布局、指標算術(Pointer Arithmetic)以及結構體空間配置。
【理論/法規依據】
▼ 還有更多解析內容