当前位置: 首页 > news >正文

C语言中#ifndef的头文件保护用法和宏定义用法

文章目录

  • 头文件保护
  • 宏定义

#ifndef MY_HEADER_H
#define MY_HEADER_H// 这里放置头文件的内容#endif // MY_HEADER_H
#ifndef _error#define _error		(-1)
#endif

这两个代码块分别用于不同的目的。

头文件保护

#ifndef MY_HEADER_H
#define MY_HEADER_H// 这里放置头文件的内容#endif // MY_HEADER_H

这是头文件保护的典型用法。这种结构用于防止头文件被多次包含。当第一次包含头文件时,MY_HEADER_H 未被定义,因此 #define MY_HEADER_H 会定义它,并且在 #endif 处结束。之后再次包含头文件时,由于 MY_HEADER_H 已经被定义,#ifndef MY_HEADER_H 之后的内容将被跳过,防止重复定义。

宏定义

#ifndef _error#define _error (-1)
#endif

这段代码是为一个错误码定义了一个宏。如果在之前的代码中没有定义 _error,则 #define _error (-1) 会定义 _error 宏,并赋值为 -1。如果在之前的代码中已经定义了 _error,则这个宏定义将被忽略。

http://www.lryc.cn/news/245893.html

相关文章:

  • 141.【Git版本控制-本地仓库-远程仓库-IDEA开发工具全解版】
  • OpenCV快速入门:移动物体检测和目标跟踪
  • 针对操作系统漏洞的反馈方法
  • 常见的软件测试用例设计方法有哪些?
  • 【24届校招】c++选手还有机会吗?如何选择更好的出路?
  • hvigor ERROR: Failed :entry:default@ProcessLibs...【鸿蒙开发-BUG已解决】
  • 由于没有公钥,无法验证下列签名: NO_PUBKEY
  • vue3 for循环创建的多个e-form 添加校验
  • 【虚拟机Ubuntu 18.04配置网络】
  • MySQL 中的 JSON_CONTAINS 函数详解
  • 详细解答T-SNE程序中from sklearn.manifold import TSNE的数据设置,包括输入数据,绘制颜色的参数设置,代码复制可用!!
  • ClickHouse中的物化视图
  • 界面组件Telerik UI for WinForms中文教程 - 创建明暗模式的桌面应用
  • C语言:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数
  • 王者荣耀java版
  • 前缀和与差分
  • 力扣hot100 滑动窗口最大值 单调队列
  • mysql MHA配置文件
  • 策略算法与Actor-Critic网络
  • 基于Pytest+Requests+Allure实现接口自动化测试
  • 【中间件】消息队列中间件intro
  • 从 RBAC 到 NGAC ,企业如何实现自动化权限管理?
  • vue3中如何使用TypeScript?
  • Git基础操作:合并某个分支的一个目录到另一个分支
  • 学习grdecl文件格式
  • Excel使用VLOOKUP查询数据
  • SpectralGPT: Spectral Foundation Model 论文翻译2
  • Java编译过程中的JVM
  • Python BDD 框架比较之 pytest-bdd vs behave
  • 【面经八股】搜广推方向:常见面试题(一)