C语言中关于#include的一些小知识

写代码的过程中,因为手误,重复包含了头文件

可以看到没有报错

如果是你自己编写的头文件,那么如果没加唯一包含标识的话,那么编译器会编译报错的。如果是系统自带的头文件,由于其每个头文件都加了特殊标识,所以即使你包含两遍,也不会有问题。

在C语言中,如果我们需要使用多次相同的头文件,可以通过条件编译来避免重复包含。

示例代码如下所示:

#ifndef HEADER_FILE_NAME_H // 定义了一个名为HEADER_FILE_NAME_H的标记符号

#define HEADER_FILE_NAME_H // 当第一次包含该头文件时,将此标记设置为已定义状态

// 这里写入头文件内容

#endif

上面的代码片段会首先判断HEADER_FILE_NAME_H是否被定义,若未定义则进行后续操作;若已经定义,则表明该头文件已经被包含过,不再重复包含。

相关推荐
悦悦子a啊13 分钟前
C++之string
开发语言·数据结构·c++
赛卡27 分钟前
IPOF方法学应用案例:动态电压频率调整(DVFS)在AIoT芯片中的应用
开发语言·人工智能·python·硬件工程·软件工程·系统工程·ipof
网络大镖客1 小时前
JavaScript高级进阶(五)
开发语言·前端·javascript
API小爬虫1 小时前
利用 Python 爬虫按关键字搜索 1688 商品详情:实战指南
开发语言·爬虫·python
不当菜虚困1 小时前
JAVA设计模式——(九)工厂模式
java·开发语言·设计模式
柴郡猫乐园1 小时前
智能指针之设计模式5
开发语言·设计模式·智能指针
IT技术员1 小时前
【Java学习】Java的CGLIB动态代理:通俗解释与使用指南
java·开发语言·学习
IvanCodes1 小时前
Java 基础--流程控制语句
java·开发语言
白总Server1 小时前
智能座舱架构中芯片算力评估
linux·运维·服务器·开发语言·ai·架构·bash
wjm0410062 小时前
C++日更八股--first
java·开发语言·c++