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

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

可以看到没有报错

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

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

示例代码如下所示:

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

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

// 这里写入头文件内容

#endif

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

相关推荐
mark-puls3 分钟前
C语言打印爱心
c语言·开发语言·算法
西阳未落11 分钟前
C语言柔性数组详解与应用
c语言·开发语言·柔性数组
Huhbbjs11 分钟前
SQL 核心概念与实践总结
开发语言·数据库·sql
咕噜咕噜啦啦25 分钟前
Qt之快捷键、事件处理、自定义按键——完成记事本项目
开发语言·qt
Source.Liu28 分钟前
【Pywinauto库】12.1 pywinauto.backend 后端内部实施模块
开发语言·windows·python·自动化
晚云与城31 分钟前
今日分享:C++ deque与priority_queue
开发语言·c++
半梦半醒*33 分钟前
正则表达式
linux·运维·开发语言·正则表达式·centos·运维开发
不吃洋葱.1 小时前
Bean.
java·开发语言
我星期八休息1 小时前
深入理解跳表(Skip List):原理、实现与应用
开发语言·数据结构·人工智能·python·算法·list
蒋星熠1 小时前
如何在Anaconda中配置你的CUDA & Pytorch & cuNN环境(2025最新教程)
开发语言·人工智能·pytorch·python·深度学习·机器学习·ai