C语言--宏定义

C语言中的宏(函数“”缺陷的补充)

  --宏是C语言中代码复用的补充方式

  --宏定义语法:#define MACRO(param) code_segment

  --宏使用语法:

    #define ADD(a, b) a + b

    ADD(1, 2)

宏与函数不同

  --宏不是函数,没有函数调用的过程

  --宏是单纯的“代码复制粘贴”,替换参数,函数调用先传递参数值,再跳转执行函数体,最后返回

  --宏,每次使用都是“复制粘贴”相同代码,而函数多次调用,执行相同的函数体代码

编译器组成简介

  --预处理模块:处理所有宏以及#开头的语句(复制粘贴替换)

  --编译模块:将C语言翻译成二进制程序

  --链接模块:将二进制程序组合成可执行程序

宏常量

  --#define NAME value;//eg: #define AGE 18;

  --宏常量再本质上与字面量相同(真正意义上的常量)

小结:

  --宏是C语言中代码复用的补充方式

  --宏不是函数,使用宏没有函数调用的过程

  --预处理模块堆宏的处理方式:复制粘贴替换

  --程序中使用宏的地方最终被处理为对应的代码片段

  --宏常量的本质就是字面量

posted @ 2023-02-12 22:43  ys_nana  阅读(136)  评论(0)    收藏  举报