民國111年 第2梯次 電腦軟體設計(C++)乙級 學科

第3題

針對以下C++ 程式,執行完後輸出結果是那一個?

題目

針對以下C++ 程式,執行完後輸出結果是那一個?

  1. (1) 20
  2. (2) 無法編譯
  3. (3) 可以編譯,無法執行
  4. (4) 0

官方答案

(1) 20

解析

(題幹程式碼未隨題附上)此類題目考編譯期與執行期的區別。透過已初始化、指向合法物件的指標,以 *p 間接賦值屬正常執行期行為,程式可順利編譯並執行,輸出即為指派的值 20。C++ 不會因為用指標改寫變數內容而產生編譯錯誤;只有解參考未初始化或已釋放的指標時,才會出現「可以編譯、無法執行」的情況。因此輸出為 20。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料