预处理语句:
特点:以#开头的语句
#include:
包含一个头文件,指的是把头文件的内容复制过来源码.c文件
#include <head.h>:
从系统环境里面找到对应的头文件
#include "head.h":
从本地开始找,如果找不到再到系统环境里面找
如何在编译的时候指定环境:
-I 头文件路径
一般头文件里面写什么东西:
预处理语句:头文件,宏定义等
类型定义:typedef,各项结构体,共用体,枚举的声明
外部声明语句:extern 函数, extern 变量
#define:
宏定义:就是直接替换
宏定义一般加上(),以解决替换的时候的优先级问题,影响正常的逻辑
宏函数:
1,具备强大的兼容性,函数内部没有参数类型,没有返回值类型
2,宏函数它的返回值等于最后一条表达式的值
3,它也是个纯粹的替换
4,换行符是\
预处理语句都必须在一行里面,如果不在一行,请用换行符
条件编译:
格式:
#ifdef 宏定义
判断后面这个宏定义是否有定义,如果有定义则选择编译这段话的内容
#else 这个可以不加
否则编译这段话的你内容
endif 代表条件编译结束
格式:
#ifndef 跟上面的逻辑相反
#else
否则编译这段话的你内容
endif 代表条件编译结束
#if 判断后面的值是否为真,真的话则编译