巨集

出自維基百科,自由嘅百科全書
跳去導覽 跳去搵嘢

巨集英文macro),又有譯做[1],泛指一類喺電腦上面用簡短輸入代替某啲輸出嘅功能,特別係可以用家自定嘅嗰種。喺程式編寫特別係指一種源碼層次嘅文字取代功能,畀用家可以喺源碼度用一啲簡短嘅文字來代替某啲通常係比較複雜或者經常用到嘅文字,巨集可以有參數,但係一般來講,同程式語言唔同嘅係巨集純綷係文字取代[2]:131 [3]:46 [4]:1.2,通常唔涉及語義。

有啲程式語言有內置嘅巨集功能,最出名嘅係 C 語系,其他嘅例子包括某啲組合語言等等。亦有特別設計來做巨集嘅語言,例如 GNUm4。亦都有啲系統嘅基礎可以係巨集,例如 TeX

巨集並唔局限喺編程。例如,「撳掣出一堆字」 嘅功能,只要係用家可以定義出乜嘢字,都係一種巨集[4]:8.3.1。有啲鍵盤會喺硬件嘅層次直接提供呢種嘅巨集功能。

引伸義[編輯]

喺一般嘅應用程式,「撳掣做一啲嘢」 嘅功能同 「撳掣出一堆字」,一般用家唔會覺得係兩樣嘢,所以 「撳掣做一啲嘢」 嘅功能喺用家嘅角度都係巨集。

因為 「撳掣做一啲嘢」 好容易會牽涉到控制流程,結果呢種功能好容易會變成一種領域特定語言,呢個情況下雖然技術上佢唔係巨集,但係都仍然被人叫做巨集,其中一個例子係 Word 嘅所謂巨集功能(其實係一種 BASIC[1]

[編輯]

C[編輯]

最初嘅 C 語言並冇常數嘅概念,傳統上 C 係用巨集表示常數,例如常用嘅NULL其實係巨集,唔係常數。傳統上用巨集代表嘅嘢會用全大階寫。呢嘅用巨集定義嘅嘢喺除錯器唔會有名,淨得得編譯嘅時候已經被巨集處理器取代咗嘅數字或者其他源碼。

[編輯]

  1. 1.0 1.1 參見 (香港中文). Microsoft. 2021年4月21號 [2014年5月16號]. 喺2022年10月4號搵到.
  2. Sethi, Ravi (1990) [1989]. Programming Languages: Concepts and Constructs (英文). Reading, MA: Addison-Wesley.
  3. "IEEE Standard Glossary of Software Engineering Terminology". IEEE Standards Collection: Software Engineering (英文) (1997年版). IEEE. 1997. ISBN 1-55937-898-0.
  4. 4.0 4.1 "Bash Reference Manual" (英文) (第5.2版). Free Software Foundation. 2022年9月19號. 喺2022年10月4號搵到.