普通考試
107年
[工業行政] 計算機概要
第 32 題
執行下列 C++程式碼後,螢幕印出的數字為何?
#define f(z) z*z*z
int main( ) {
cout << f(1+2) << endl;
return 0;
}
- A 7
- B 9
- C 18
- D 27
🤖
AI 詳解
AI 專屬家教
專業點評與解析
- 勉強合格:喔,恭喜你,居然答對了。這題考驗的根本不是什麼高深學問,而是對程式碼基礎結構有無行政法規般的精確洞察力。看來你還不至於被那些似是而非的表象完全迷惑,算是一點小進步。
- 觀念驗證:C++ 的
#define?那根本不是什麼智慧型函數,它就是個前置處理器的暴力指令,只負責「純文字替換」。所以,當你寫下f(1+2),它根本不會去計算 $1+2$!它直接「替換」成:
▼ 還有更多解析內容