/*************************************************************************************** Define debu ...
. 引言 我們在寫程序的時候,總是或多或少會加入一些printf之類的語句用於輸出調試信息,但是printf語句有個很不方便的地方就是當我們需要發布程序的時候要一條一條的把這些語句刪除,而一旦需要再次調試的時候,這些語句又不得不一條條的加上,這給我們帶來了很大的不便,浪費了我們很多的時間,也造成了調試的效率低下。所以,很多人會選擇使用宏定義的方式來輸出調試語句。 .宏定義 比如,定義一個宏開關: ...
2017-10-18 18:31 1 1992 推薦指數:
/*************************************************************************************** Define debu ...
1. 2. 3. 配合宏開關在編譯前靜態指定打印等級 #if CUR_PLEVEL > 5 #define TRC_PR(fmt, args...) fprintf(stderr," TRC_P(%s:%d):\t" fmt, __func__ ...
1. #define Conn(x,y) x##y#define ToChar(x) #@x#define ToString(x) #xx##y表示什么?表示x連接y,舉例說:int n = Con ...
原文地址:http://blog.csdn.net/cp1300/article/details/7773239 我們在寫程序的時候,總是或多或少會加入一些printf之類的語句用於輸出調試信息,但是printf語句有個很不方便的地方就是當我們需要發布程序的時候要一條一條的把這些語句 ...
GCC支持宏定義 gcc -Dmacro,將macro定義為1,我們可以利用這點在我們的代碼中加入宏定義開關。 這里,如果可變參數被忽略或為空,‘##’操作將使預處理器(preprocessor)去除掉它前面的那個逗號。即將兩個相鄰的標記(token)連接為一個單獨的標記 ...
/* * 宏的寫法,宏的作用域,當前位置開始到大括號結束,如果沒有大括號,到文件結尾。 */ #include <stdio.h> //#define HELLO int main(int argc, const char * argv ...
一. c /c++語言中使用宏的主要目的主要有 3 個: 1. 提高代碼的可讀性; 把用到的常量定義成有意義的名字; 2. 無需函數調用,運行效率高; 對於一些簡單的操作,無需調用函數,雖然編程是強調模塊化,但是函數調用時,需要保護現場和恢復現場。這些都需要耗時。對於復雜的操作 ...
宏定義是C提供的三種預處理功能的其中一種,這三種預處理包括:宏定義、文件包含、條件編譯。 1.不帶參數的宏定義: 宏定義又稱為宏代換、宏替換,簡稱“宏”。 格式: #define 標識符 字符串 其中的標識符就是所謂的符號常量,也稱為“宏名”,字符串可以是常數、表達式、格式 ...