有关使用预处理器#ifndef的提示

Dea*_*ean 0 c

我正在学习C并希望有人能解释使用的逻辑是#ifndef什么?

我也找到了许多我看过的C程序,人们似乎遵循一个约定使用文件名后面的#ifndef,#define#endif.如何选择这个名称有什么规则或提示吗?

#ifndef BITSTREAM_H
#define BITSTREAM_H

#include <stdio.h>
#include <stdint.h>

/*Some functions*/

#endif
Run Code Online (Sandbox Code Playgroud)

Tom*_*ych 5

头文件通常会使用这样的逻辑,以避免被包含多次.源文件第一次包含它们时,名称未定义,因此它被定义并完成其他操作.随后的时间,名称已定义,因此所有内容都被跳过.