宏定义是C语言提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包哈巴、条件编译。
宏名一般用大写
(2)使用宏可提高程序的通用性和易读性,减少不一致性,减少输入错误和便于修改。例如:数组大小常用宏定义
(3)预处理是在编译之前的处理,而编译工作的任务之一就是语法检查,预处理不做语法检查。
(4)宏定义末尾不加分号;
(5)宏定义写在函数的花括号外边,作用域为其后的程序,通常在文件的最开头。
(6)可以用#undef命令终止宏定义的作用域
(7)宏定义允许嵌套
(8)字符串( " " )中永远不包含宏
(9)宏定义不分配内存,变量定义分配内存。
(10)宏定义不存在类型问题,它的参数也是无类型的.
定义宏求三个数最大值
#include <stdio.h> #define MAX(a,b,c) (a>b?a:b)>c?(a>b?a:b):c
int main(int argc, const char * argv[]) {
int a = 10 ,b = 65 ,c = 1;
int max = MAX(a,b,c);
printf("三个数的最大值是:%d\n",max);
return 0; }
|