C的 "#" 與 "##"

来源:互联网 发布:mysql 时间格式转换 编辑:程序博客网 时间:2024/06/04 01:17

1.如果再替代象徵序列中的參數識別字有 #, 則 字符將被加在對應的參數前後

#define tempfile(dir)  #dir "/%s"

當tempfile(/usr/tmp)呼叫這個macro時,會產生

"/usr/tmp" "%s"

 

2.如果再替代象徵序列中的參數識別字有 ##, 則再參數替代後##就會被捨棄,這樣會使象徵字串連在一起

#define cat(x,y)  x##y

呼叫cat(var,123) 得到 var123

原创粉丝点击