c - 在标题中定义字符

标签 c variables header

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

比如:#define nameVariable valueVariable

注意:

  • 所有 c 文件都不包含其他 header (即 1.c 不包含 2.h 和 3.h 等)。

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

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

最佳答案

如果有问题的变量是一个永远不会改变的常量字符串,您可以为此使用 #define

在 4.h 中:

#define MY_STATIC_STRING "my_string"

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

关于c - 在标题中定义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44852800/

相关文章:

java - 动态 Java 变量命名

c++ - 在主类之外声明多个嵌套类

c - c中的序列点

c++ - 错误 LNK2005 : xxx already defined in MSVCRT. lib(MSVCR100.dll) C :\something\LIBCMT. lib(setlocal.obj)

c - main 和 fopen 是有效的变量名吗?

c - 二进制搜索,strcmp C 中的两个动态字符串数组

javascript - 无法在javascript中创建变量

php - 变量在应该可见时未定义(已定义)

php - 本地主机 header 重定向到本地主机/链接

android - 如何像通讯录app一样在Android listview中绘制section header?