c - 使用#ifndef#define #endif 处理 C 头文件的最佳实践

标签 c coding-style header

关于以下“模式”的最佳实践是什么?

#ifndef BLAFOO_H
#define BLAFOO_H
/* ...
 * ...
 */
#endif /* BLAFOO_H */

我应该如何命名 #define 指令中的 header ?我已经看到了从 BLAFOO_H__BLAFOO_H_BLAFOO_H_ 等等。

最佳答案

将它们命名为 BLAFOO_H(我个人使用 BLAFOO_H_,其中 BLAFOO 是头文件名)。

确保您的 BLAFOO 不会与其他文件/库/等发生冲突。你正在使用,例如让您的项目和/或模块名称成为该名称的一部分。

_ 开头的标识符是为实现/编译器保留的,所以不要使用它。

关于c - 使用#ifndef#define #endif 处理 C 头文件的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2939368/

相关文章:

C++ 如何在不必编译其 cpp 文件的情况下包含类头文件?

c - 使用trace32读取宏值

第二次 calloc 问题 - 在 C 上

c - 为什么我必须使用此代码输入 3 个值?

java - 具有增强 for 循环的 ClassCastException

css - 调整移动标题图片的大小

c - MSB6003 : The specified task executable "CL.exe" could not be run

c++ - 您如何在大型 C++ 项目中实现单元测试?

java - 在实例变量和方法之前写 "this."是好还是坏风格?

php - 自定义错误处理程序的奇怪行为-PHP