C语言 百文网手机站

C 语言中宏的使用

时间:2021-04-11 19:18:06 C语言 我要投稿

C 语言中宏的使用

  宏的主要作用是在编译预处理时,对程序中所有出现的“宏名”都用宏定义中的字符串去代换 。

  宏定义是由源程序中的宏定义命令完成的,宏代换是由预处理程序自动完成的。在 C 语言中,“宏”分为有参数和无参数两种,即分别简称为有参宏和无参宏。

  无参宏

  无参宏的宏名后不带参数,其定义的一般形式为:

  #define 标识符 字符串

  其中的. “#” 表示这是一条预处理命令,凡是以 “#” 开头的均为预处理命令。“define” 为宏定义命令,“标识符” 为所定义的宏名称,“字符串” 可以是常数、表达式、格式串等 。

  #include#define NUM 4int main(int argc, const char * argv[]) { int a = 4;

  a *= NUM; printf("%d ", a); return 0;

  }

  运行结果:16 。这里可以看出我们定义了一个宏名称为 NUM 的宏,当 main 中代码出现 NUM 的地方,就会自动用数字 4 进行替换,这样做的好处是当代码中多处存在同一变量时,只需要修改宏 NUM 的值即可,而无需在代码中一处处的进行修改 。

  有参宏

  C 语言允许宏带有参数,在宏定义中的参数称为形式参数,宏调用中的参数称为实际参数 。

  对带参数的宏,在调用中,不仅要宏展开,而且要用实参去代换形参 。

  带参宏定义的一般形式为:

  #define 宏名(形参表) 字符串

  示例代码:

  #include#define SUM(a) a+aint main(int argc, const char * argv[]) { int a = SUM(4);  printf("%d ", a);  return 0;

  }

  运行结果:8 。这里可以发现 SUM 将 4 传入,通过 a + a ,即 4 + 4 = 8 。

【C 语言中宏的使用】相关文章:

简单讲解C语言中宏的定义与使用11-19

C语言中volatile的使用方法11-22

C语言中define的使用方法03-17

C语言中qsort快速排序使用实例10-03

c语言中有关随机函数的使用详解11-20

总结C语言中const关键字的使用10-01

C语言中两个串函数的使用09-26

c语言中使用环境变量的技巧09-24

C语言中const关键字的使用方法10-05