程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> 關於C >> C語言的一些特殊用法(#define)

C語言的一些特殊用法(#define)

編輯:關於C

很久沒有寫BLOG了^_^

不知道寫什麼好,就寫寫大家比較容易忽略的東西吧


一:特殊的字符串宏

[cpp]
#define A(x) T_##x 
#define B(x) #@x 
#define C(x) #x 

我們假設x=1, 則上面的宏定義會被解釋成以下的樣子
A(1)------>T_1
B(1)------>'1'
C(1)------>"1"


這些主要用於一些字符串處理函數和參數命名上,並不復雜,不過知者甚少


二:屏蔽無用參數警告

[cpp] 
#define UNUSED_PARAM(p)    ((void)p) 
這個用來屏蔽無效參數的
比如

[cpp] view plaincopy
void a(int x1, int x2) 

    // do nothing 

這樣會彈出警告,x1,x2是無效的參數
但是,寫成這樣,就沒關系了

[cpp]
void a(int x1, int x2) 

    UNUSED_PARAM(x1); 
    UNUSED_PARAM(x2); 

三:  想不出來了,占位,等睡醒了在想


宏的更常見用法我就不寫了,比如頭文件的保衛宏,版本定義宏,靈活使用確實事半功倍。

 作者:vonger

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved