連結器與載入器與執行檔格式

執行檔的.text區段中存放的是下列何者?

  1. A程式的機器碼指令
  2. B程式中使用的文章(文字檔)
  3. C執行時輸入的字串
查看答案與解析

正確答案:A. 程式的機器碼指令

.text區段存放將函式翻譯後的機器碼指令。執行時通常只允許讀取與執行,禁止寫入,可防止誤寫入及攻擊者改寫程式碼。此外因為不會被改寫,在多個行程執行相同程式或共用函式庫時,可共用實體記憶體上的同一份副本。

  • A. 正確。與名稱相反,它不是文字而是程式碼的區域。
  • B. 名稱雖是text,內容卻是機器碼。
  • C. 輸入的內容會放在堆積或堆疊等執行時的區域。
練習這個領域 前往領域頁面

連結器與載入器與執行檔格式的其他題目

  1. 在C語言中,寫在檔案外側的全域變數「int limit = 100;」,一般會放在哪個區段?
  2. 關於.bss區段的特徵,下列何者正確?
  3. 執行C語言的「char *p = "hello"; p[0] = 'H';」時,在許多環境中會異常終止。下列關於其原因的敘述何者正確?
  4. 下列全域變數中,一般會放在.bss區段的組合為何?
  5. 在C語言的函式中宣告、未加static的區域變數(自動變數),執行時會放在哪裡?

這個領域的比較