1、判斷預處理命令是否被定義
#ifdef symbol
//statements
#endif
舉例
#ifndef _toupper
#define _toupper ……..
#endif
2、進行if_else預處理
#ifdef symbol
//statements
#else
//other statements
#endif
舉例:
#ifdef _msc_ver
printf(「microsoft」);
#endif
#ifdef __borlandc__
printf(「broland」);
#endif
3、在程式中,作為變通,可以在程式中使用#if命令和defined運算子來判斷程式是否對某些符號已經定義:
#ifdef my_library
#ifndef my_routines
#include 「my_code.h」
#endif
#endif
可以採用如下的格式進行轉化
#if defined(symbol)
//statements
#endif
使用者可以使用#ifdefined來建立包含c邏輯運算子(包括&&、||、!)以下的結果與第一種一樣但是感覺更加的明確
#if defined(my_library) &&!defined(my_routines)
#include 「my_code.h」
#endif
4、建立自定義巨集:巨集允許使用者建立類似函式、可帶引數的操作。引數是使用者傳遞給巨集的值:
#include #define sum(x,y) ((x) + (y))
void main()
預處理器對巨集引數進行替換:
x=sum(3,5)--------->預處理器-------------->
x=((3)+(5))
5、建立min和max巨集
#define min(x,y) ( ((x) < (y)) ? (x) : (y) )
#define max(x,y) ( ((x) > (y)) ? (x) : (y))
6、建立square和cube巨集
#define square(x) ((x) * (x))
#define cube(x) ((x) * (x) * (x))
注意:作為規則,一定要將巨集引數放在括號中,巨集是沒有型別的,巨集允許使用者使用任何型別的數值。 C語言學習筆記 C常量
常量是固定值,在程式執行期間不會改變。這些固定值,又叫字面量。常量可以是任何的基本資料型別,比如整數常量 浮點常量 字元常量 或字串字面值,也有列舉常量。常量就像是常規的變數,只不過常量的值在定義後不能進行修改。整數常量可以是十進位制 八進位制或十六進製制的常量。字首指定基數 0x或0x表示十六進製...
C語言學習筆記 巨集定義
define 叫做巨集定義命令,它也是c語言預處理命令的一種。所謂巨集定義,就是用乙個識別符號來表示乙個字串,如果在後面的 現了該識別符號,那麼就全部替換成指定的字串。巨集定義是由源程式中的巨集定義命令 define完成的,巨集替換是由預處理程式完成的。define 巨集名 字串 表示這是一條預處理...
Go語言學習筆記 常量
常量是程式執行時,不會改變的量 go中常量的宣告方式和變數類似,有組合宣告,並行宣告,普通宣告 定義常量 const pi 3.14 這裡並沒有宣告變數型別,編譯器會自行判斷 dateformat string yyyy mm dd hh mm ss format 不提供資料型別和初始化值得常量視作...