预处理指令

  

1.强处理指令:是在程序编译前执行的命令

2.强处理指令包括:宏定义(或带参数的宏定义),条件编译,文件包含

a.宏定义:

  作用:将define关键字后的表达式替换成第二个表达式,不参与任何计算,只负责替换

  定义:#define 表达式  值    (所有的宏定义都以#开头)

  作用域:默认从定义开始到文件结尾,除非有#undef

b.带参数的宏定义:

  定义:#define 函数((参数1)(参数2))  (表达式)

     注意:参数和表达式都尽量用(),避免因为计算顺序导致结果出错

eg.直接将sum(1,2)替换成 (1+2)

#include <stdio.h>
#define sum((a),(b)) ((a)+(b))//宏定义两个数的和

int main()
{
      printf("1和2的和是:%d
",sum(1,2));  
      return 0;
}

c.条件编译 

  作用:用于判断代码是否将要执行编译

  定义:注意#if 和#endif是固定搭配

#if(条件1){}
#elif(条件2){}
#else{}
#endif

d.文件包含

  定义;#include "自定义文件"

  作用:会把引用的文件的内容拷贝到当前文件中

  注意:include 是不可循环包含的,即a.c中包含b.h,但是b.c中不能包含a.h

#include <stdio.h>
#include "string.h"

int main()
{
    return 0;
}
原文地址:https://www.cnblogs.com/hui1107464497/p/4532041.html