赞
踩
define 是一个预处理指令。 在C或C++语言源 程序 中允许用一个标识符来表示一个字符串,称为“ 宏 ”。 被 定义 为“ 宏 ”的标识符称为“ 宏 名”。
例如:#define MAX 1000
宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含 任何字符 ,可以是 常数 ,也可以是表达式 。而预处理程序对它不作任何检查 。
如有错误,只能在编译已被宏展开后的源程序时发现。
宏定义不是说明或语句,在 行末不必加分号 ,如加上分号则连分号也一起置换。
宏定义必须 写在函数之外 ,其作用域为宏定义命令起到源程序结束。
如要 终止其作用域可使用# undef命令 。
- #define ADD(x, y) ((x)+(y))
-
- #include <stdio.h>
-
- int main()
- {
- int sum = ADD(2, 3);
- printf("sum = %d\n", sum);
-
- sum = 10*ADD(2, 3);
- printf("sum = %d\n", sum);
-
- return 0; }
惯例将宏名称每个字母采用大写,这有助于区分宏与一般的变量。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。