天天看点

宏定义define

1、无参数宏定义用法

一般形式:#define 标识符 字符串

其中,#表示预处理命令,凡是以“#”开头的都是预处理命令,标识符全部大写,即为宏名,字符串可以是常数、表达式、字符串等。

例如:#define PI 3.14<=>PI=3.14

          #define MAX a+b <=>MAX=a+b

          #define HELLO “Hello!”

注意:#define ptr (int*)

          ptr a,b;

          则编译为:int *a,b;

          即a是指针类型,b是整形

          若typedef int* ptr2;

             ptr2 a,b;

             编译为:int *a,*b;

             即a与b都是整形指针

2、有参数宏定义用法

一般形式:#define 标识符(形参) 表达式

例如:#define SUM(a,b)   ((a)+(b))  SUM=a+b

3、取消宏定义时,用#undef  标识符

继续阅读