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

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

可以看到没有报错

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

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

示例代码如下所示:

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

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

// 这里写入头文件内容

#endif

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

相关推荐
wjs20242 分钟前
《Ionic 侧栏菜单》
开发语言
祁思妙想3 分钟前
linux常用命令
开发语言·python
mit6.82420 分钟前
[box64] 解决ARM64运行x86_64跨平台兼容性 | 机器架构配置
c语言
IMPYLH25 分钟前
Lua 的 IO (输入/输出)模块
开发语言·笔记·后端·lua
普通网友27 分钟前
Objective-C 类的方法重载与重写:区别与正确使用场景
开发语言·ios·objective-c
喵了meme35 分钟前
C语言实战6
c语言·开发语言
AAA阿giao38 分钟前
从“操纵绳子“到“指挥木偶“:Vue3 Composition API 如何彻底改变前端开发范式
开发语言·前端·javascript·vue.js·前端框架·vue3·compositionapi
小裴(碎碎念版)40 分钟前
文件读写常用操作
开发语言·爬虫·python
sheji34161 小时前
【开题答辩全过程】以 基于Java的应急安全学习平台的设计与实现为例,包含答辩的问题和答案
java·开发语言·学习