#define用法及注意事項
1.一般形式:
#define 識別符號 記號序列
例:#define g 9.8
2.帶引數形式
#define 識別符號(識別符號表 opt) 記號序列
例:#define square(x) ((x)*(x))
注意事項:
注意括號使用,不然可能會出現歧義,如果定義成
#define square(x) x*x
則 square(1+1) ,被替換成 1+1*1+1 。
3. 記號序列中特殊符號的使用
1)#號使用
#號作用是將其後的形參新增雙引號。
例:#define path(dir) #dir
path(user\temp),被替換成 "user\temp"
注意事項:
如果引數中存在「或\等,需轉義。
2)#@使用
#@作用是將其後的形參新增單引號。
例:#define path(dir) #@dir
path(a),被替換成 『a』
3)##使用
##作用是連線形參和其他識別符號。
例:#define cat(x, y) x ## y
cat(123,456) ,被替換成123456。
define用法,C語言 define詳解
c語言中,可以用 define 定義乙個識別符號來表示乙個常量。其特點是 定義的識別符號不佔記憶體,只是乙個臨時的符號,預編譯後這個符號就不存在了。預編譯又叫預處理。預編譯不是編譯,而是編譯前的處理。這個操作是在正式編譯之前由系統自動完成的。用 define 定義識別符號的一般形式為 define ...
c語言define的用法
1 define的簡單定義作用 define相當於乙個簡單的文字替換,對於普通的常量定義,我就不必多說了,但是對於類似於函式定義的形式,可能會出現錯誤,例如 define add x,y x y 用到 中時會出現問題,比如計算式子c add x,y d,本意是計算出x與y的和之後在分別與c,d做乘積...
C語言 define的用法
1.簡單的巨集定義 define 識別符號 替換列表 替換列表可以是數,字串字面量,標點符號,運算子,識別符號,關鍵字,字元常量。注意 替換列表是可以為空的 典型錯誤 define n 100 int a n 這樣會成為int a 100 這裡會處理成為一種標識記號一樣 define n 100 i...