C 预处理器、头文件、文件读写
预处理器
参考链接:https://www.runoob.com/cprogramming/c-preprocessors.html
预处理器是再变异之前做的一些工作
include 包含一个源文件代码
常见的有#include <stdio.h>
就是从系统库中获取stdio.h,并添加到当前文本中。而#include "header.h"
则是告诉预编译器(cpp)从当前目录中添加header.h文件到当前文本中
defind定义宏
宏的意思就类似一个谁都知道的常量如
#define COLOR "blue"
还有取消宏定义undef
预定义宏
包括一些日期、当前目录等,不能修改
预处理器运算符
参数化的宏
头文件
参考链接:https://www.runoob.com/cprogramming/c-header-files.html
头文件包含了一些宏定义和c函数声明(如printf())
引用头文件相当于复制头文件的内容,但不会直接复制,因为这样很容易出错,特别是在引用多个文件的时候
头文件包括系统文件和程序员写的头文件,这两个的引用方式不一样
头文件引用经过预编译器(cpp)处理后,得到的文本就是引用的头文件和原本的文件的并集
相同的头文件不能被引用两次,这样会产生错误,可以采用条件编译语句来避免即包装器#ifndef
有条件引用
是为了应对根据不同的情况引用不同的文件,特别是选择引用多个文件的时候,这样是很不妥当的,可以通过预编译器来宏定义头文件的名称,然后引用相应的头文件,这就是有条件引用。
即使用宏来代替#include 后面的头文件名