分享方式:


定義 NMAKE 巨集

NMAKE 巨集是使用此語法來定義:

macro_name=string

巨集_name 是字母、數位和底線_ () 最多 1,024 個字元的區分大小寫組合。 巨集_name 可以包含叫用的巨集。 如果 巨集_name 完全由叫用巨集所組成,則叫用巨集不能為 null 或未定義。

字串可以是零個或多個字元的任何序列。 Null 字串包含零個字元或只有空格或索引標籤。 字串可以包含巨集調用。

巨集中的特殊字元

定義之後的數字元號 (#) 會指定批注。 若要在巨集中指定常值數字符號,請使用插入號 (^) 將它逸出,如 中所示 ^#

貨幣符號 ($) 會指定巨集調用。 若要指定常值 $,請使用 $$

若要將定義延伸至新行,請使用反斜杠 (\) 結束該行。 叫用巨集時,反斜杠和後置換行符會取代為空格。 若要在行尾指定常值反斜杠,請在它前面加上插入號 (^) 逸出,或跟在後面加上批注規範 (#)。

若要指定常值換行符,請使用插入號 (^) 逸出結束行,如下列範例所示:

CMDS = cls^
dir

Null 和未定義的巨集

Null 和未定義的巨集都會展開為 null 字串,但定義為 null 字串的巨集會被視為在前置處理運算式中定義。 若要將巨集定義為 null 字串,請在命令行或命令行檔案中的等號 (=) 後面指定空格或索引標籤以外的字元,並以雙引號括住 Null 字串或定義。" " 若要取消定義巨集,請使用 !UNDEF。 如需詳細資訊,請參閱 Makefile前置處理指示詞

定義巨集的位置

在命令行、命令行、命令行、makefile 或 檔案中 Tools.ini 定義巨集。

在makefile或檔案中 Tools.ini ,每個巨集定義都必須出現在個別的行上,而且不能以空格或製表符開頭。忽略等號周圍的空格或索引標籤。 所有 字串 字元都是常值,包括周圍的引號和內嵌空格。

在命令行或命令行檔案中,空格和索引標籤會分隔自變數,而且不能括住等號。 如果字串有內嵌空格或索引標籤,請以雙引號括住字串本身或整個巨集 。" "

巨集定義的優先順序

如果巨集有多個定義,NMAKE 會使用最高優先順序的定義。 下列清單顯示優先順序,從最高到最低:

  1. 命令行上定義的巨集

  2. 在makefile或include檔案中定義的巨集

  3. 繼承的環境變數巨集

  4. 檔案中 Tools.ini 定義的巨集

  5. 預先定義的巨集,例如 CCAS

用來 /E 讓繼承自環境變數的巨集覆寫具有相同名稱的makefile 巨集。 使用 !UNDEF 來覆寫命令行。

另請參閱

巨集和 NMAKE