簡單的宏替換函數
1.宏定義必須寫在第一次使用該宏定義的代碼以前;操作系統
2.宏定義不是以分號結束的blog
3.#define string1 string2 之間至少要有一個空格字符串
4.string 1稱爲宏,string2 稱爲宏擴展string
5. 宏名用大寫的字母表示是一個習慣編譯
6.使用宏的好處:class
a 簡化程序的書寫擴展
b 提升程序的可讀性引用
c 便於程序的修改程序
d 提升程序的可移植性
例如:
#define AA 1.1
不一樣的操做系統的文件結束符是不一樣的,有的是-1,有的是其它字符,爲此咱們用以下的宏定義:
#define EOF -1
7.預處理程序將不替換字符中或者單引號括起來的字符常量的宏
8 前面定義的宏名,能夠被後面的引用
宏的定義
#define 宏名(參數表) 字符串
其中:字符串中要包含參數表中指定的參數
例如:要在程序中計算大小不一樣的圓的面積,則可定義以下的帶有參數的宏:
9 帶參數的宏調用和函數調用時徹底不一樣的
宏調用是在編譯以前完成
函數調用是在編譯以後實現的。
取消已有的宏定義 undef 宏名
做用:在#undef 行後面出現的宏名將不被擴展
例如:
#define AA 1.1
#undef AA