免費開始練習
司法三等申論題 105年 [檢察事務官電子資訊組] 程式語言

第 一 題

📖 題組:
請說明下列之變數生命期(Variable lifetime),並利用 C 語言舉例說明: (一) Explicit heap-dynamic(5 分) (二) Static(5 分) (三) Stack-dynamic(5 分)
📝 此題為申論題,共 3 小題

小題 (一)

Explicit heap-dynamic(5 分)

思路引導 VIP

看到此題,應立刻想到記憶體配置的四種分類。針對 Explicit heap-dynamic,關鍵字為「堆積(Heap)」、「明確指令(Explicit)」、「指標(Pointer)」,並需舉出 malloc 與 free 的使用,最後補充其帶來彈性但也伴隨記憶體洩漏風險的優缺點。

🤖
AI 詳解
AI 專屬家教

【破題】 Explicit heap-dynamic(明確堆積動態)變數是指由程式設計師透過明確的程式指令,於執行時期在堆積(Heap)區塊動態配置與釋放記憶體的變數。 【論述】

小題 (二)

Static(5 分)

思路引導 VIP

看到「Static變數生命期」,應立即聯想到「與程式執行期等長」的核心概念。答題時需依序點出記憶體區段(Data/BSS segment)、配置與釋放時機,並透過 C 語言中『全域變數』或『加上 static 關鍵字的區域變數』來舉例,最後補充其對空間效率與遞迴/執行緒安全的影響以獲取高分。

🤖
AI 詳解
AI 專屬家教

【破題】 Static(靜態)變數的生命週期貫穿整個程式的執行過程,其記憶體位址在程式執行前便已綁定,直到程式終止時才被釋放。 【論述】

小題 (三)

Stack-dynamic(5 分)

思路引導 VIP

看到「Stack-dynamic」,應立刻聯想到「區域變數(Local variables)」。作答時需明確點出其記憶體配置於堆疊區(Stack),生命週期與函式或區塊的執行緊密綁定(進入時配置、離開時自動釋放),並輔以包含註解說明的 C 語言程式片段,最後分析其支援遞迴但可能有額外執行負擔的優缺點。

🤖
AI 詳解
AI 專屬家教

【破題】 「堆疊動態變數(Stack-dynamic variable)」是指其儲存空間的配置與釋放,與程式區塊(Block)或函式(Function)的執行週期緊密綁定的變數。 【論述】

升級 VIP 解鎖