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

第 一 題

一、程式在計算機裡執行的時候,必須妥善安排變數的放置區塊。不同種類的變數應安置於不同的區塊,以便管理,增進程式執行的效率。下列程式裡的七個變數 a, b, c, d, e, f, *f 各應置於何處?(20 分) #include int a; static int b; int foo (int c) { int d , *f; static int e; b = 2 * c; d = a + b + c; e = d * 3; f = (int *)malloc(sizeof(int)); *f = e + 7 ; return e * 5 ; } int main(){ a = 5; b = 4; a = foo(b); }
📝 此題為申論題

思路引導 VIP

看到此題,應先辨識程式中各變數的宣告位置與儲存類別(如全域、靜態、區域、動態配置)。接著將其對應至程式執行時的記憶體區段:Data/BSS Segment(全域/靜態)、Stack(區域/參數)、Heap(動態配置)。

🤖
AI 詳解 AI 專屬家教

【破題】本題測驗 C 語言程式在執行期(Runtime)的記憶體空間配置概念。程式的記憶體主要分為程式碼段(Text Segment)、資料段(Data/BSS Segment)、堆疊段(Stack)與堆積段(Heap),不同生命週期與作用域的變數會被配置於對應的區塊。 【論述】 一、記憶體區段定義與運作原理

▼ 還有更多解析內容

升級 VIP 解鎖