1 帶有-d的巨集,一般用於make中:
ifndef $svn_base
svn_base=$(ver_info_svn_base)
endif
ver_info_svn_base是變數,型別是整數;
ver_info_ver_no 是變數,型別是字串;
processor_cflags+=-d comp_date=\"$(comp_date)\" -dcomp_time=\"$(comp_time)\" -d svn_base=$(svn_base) -d svn_fos=\"$(ver_info_ver_no)\"
2 在.c檔案中使用多巨集定義:
#define default_version_num "version "
#define num_to_string1( x ) #x
#define num_to_string( x ) num_to_string1( x )
#define default_fos_version default_version_num":"num_to_string(svn_fos)"("num_to_string(svn_base)")"
巨集裡如果還需要使用巨集,要把子巨集轉換為字串的形式,這樣在列印時%s即可 c語言解除巨集定義 C語言中巨集定義的用法
說到巨集定義,我們應該先了解什麼是預處理指令,相信大家並不會陌生,之前我們程式設計時,程式的開頭 include指令,define指令都是預處理指令,它能使我們的編譯更加的高效,便捷,因此c語言中是允許使用者自己加入一些特定的預處理指令的。一,不帶引數的巨集定義 不帶引數的巨集定義是比較簡單的,就是...
C語言中巨集定義 和 符號的用法
c語言中巨集有兩個非常有用的巨集符號 這兩個符號的用法總結如下。把巨集引數變為乙個字串 而 把兩個巨集引數貼合在一起。一 一般用法 include define str s s define conss a,b int a e b int main 二 巨集引數是另乙個巨集 1 非 和 的情況 in...
c 語言中的巨集定義
巨集定義 巨集定義是c提供的三種預處理功能的其中一種,這三種預處理包括 巨集定義 檔案包含 條件編譯 1.不帶引數的巨集定義 巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 格式 define 識別符號 字串 其中的識別符號就是所謂的 符號常量,也稱為 巨集名 預處理 預編譯 工作也叫做巨集展開 將巨...