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

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

可以看到没有报错

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

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

示例代码如下所示:

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

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

// 这里写入头文件内容

#endif

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

相关推荐
fs哆哆30 分钟前
在VB.net中,用正则表达式方法清除干扰符号方法
开发语言·正则表达式·c#·.net
嵌入式@秋刀鱼44 分钟前
《 第三章-招式初成》 C++修炼生涯笔记(基础篇)程序流程结构
linux·开发语言·数据结构·c++·笔记·visual studio code
shenyan~1 小时前
关于 WASM: WASM + JS 混合逆向流程
开发语言·javascript·wasm
梦境虽美,却不长1 小时前
C语言 学习 文件操作(开关,读写,定位,大小)操作 2025年6月8日12:19:24
c语言·开发语言·学习
Charlotte_jc1 小时前
完美解决openpyxl保存Excel丢失图像/形状资源的技术方案
开发语言·python·excel·openpyxl
西北大程序猿2 小时前
服务器代码知识点补充
服务器·开发语言·网络·c++·网络协议
新知图书3 小时前
R语言ICU患者死亡率预测实战
开发语言·r语言
wennieFan4 小时前
python基础面试练习题
开发语言·python
阿福不是狗4 小时前
Python使用总结之Linux部署python3环境
linux·开发语言·python
枣伊吕波4 小时前
第十三节:第七部分:Stream流的中间方法、Stream流的终结方法
java·开发语言