申論 3下圖是一個執行時堆疊(run-time stack)中之啟動紀錄(activation record)的示意圖:Returned valueLocal variablesFunction parametersDynamic linkStatic linkReturn address㈠說明如何使用啟動紀錄中的function parameters 實作下列兩種副程式的參數傳遞(parameter passing)方法:call-by-value(或稱pass-by-value)和call-by-address(或稱pass-by-address, call-by-reference)。(10 分)㈡考慮下列的C 程式語言的程式片段,說明當主程式main 呼叫副程式foo 之後,副程式foo 的啟動紀錄之function parameters 內容為何?並寫出主程式main 的輸出值。(10 分)int c=5; int main (void) {void foo(int x, int* y) { int a=10, b=20;int a=1, b=2; foo(b, &a);*y = a + b * x ; printf("%d, %d, %d\n", a, b, c);c = a + b + c; }}年公務人員高等考試三級考試試題 代號:35640類 科: 資訊處理科 目: 程式語言