作者lccf (基因演算法)
看板TransCSI
標題Re: [問題] 關於macro和procedure的問題
時間Fri May 18 10:06:39 2007
※ 引述《x0315b100 (飛來飛去)》之銘言:
: ※ 引述《lccf (基因演算法)》之銘言:
: : 一般比較常拿來比較 或是比較會考的是 subroutine 跟 macro
: : subroutine是副程式,也就是說今天主程式A執行到一半 程式碼呼叫
: : macro(命名為巨集B) 則電腦會copy一份一樣的巨集 到你呼叫的那段程式碼那邊
: : 所以電腦就省去跳躍過去的動作
: : 但是缺點就是 因為你copy需要佔用記憶體空間
: : 所以是 "省時 費空間"
: : 而副程式剛好相反 當你今天主程式呼叫到副程式時
: : 整個會跳躍過去執行副程式寫的內容 等執行完
: : 在return回來
: : 所以也就是 "省空間 費時"
: : 這兩個剛好是對稱的 所以還蠻好記的
: : 希望有幫助到你
: 當然有幫助摟...太感謝了!!
: 但是..又一個問題出現..procedure和subroutine差在哪裡呢??
: 不都是副程式嗎??
subroutine翻譯只有副程式這個解釋
procedure目前我看到的解釋方法有兩種
我覺得比較偏向"程序" 也就是一段敘述的意思
不過大學原文書裡面 都會用procedure代表一個副程式
procedure a
{
}
procedure b
{
}
不過教科書很多都是虛擬碼的寫法
而且會把procedure當成副程式
所以
procedure->原文書裡常看到表達一段程式的寫法
subroutine->程式語言書上看到的寫法
不過我想重點他是想考你副程式跟巨集之間的差異啦
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.118.138
※ 編輯: lccf 來自: 163.25.118.138 (05/18 10:07)
推 aweila75:同意你的說法,重點是考subroutine& macro 05/18 10:15
推 x0315b100:嗯!太感謝大大的詳細解說了!! 05/18 23:24