在标题中定义字符

W.d*_*oui 5 c variables header

我有多个 C 文件 1.c 2.c 和 3.c 以及它们对应的头文件 1.h 2.h 3.h。这些文件使用相同的静态 char*变量,所以我想在一个头文件中定义这个变量。有什么解决办法吗?

像:#define nameVariable valueVariable

注意:

  • 没有一个 c 文件包含另一个头文件(即 1.c 不包含 2.h 和 3.h 等)。

  • 所有 3 个文件都包含一个 4.h 文件。

  • 所有 3 个文件都具有相同的 Makefile。

dbu*_*ush 5

如果有问题的变量是一个永远不会改变的常量字符串,你可以使用 a#define来解决这个问题。

在 4.h:

#define MY_STATIC_STRING "my_string"
Run Code Online (Sandbox Code Playgroud)

这将在您使用的每个源文件中执行文本替换MY_STATIC_STRING