我有一个 C 项目,其中所有代码都组织在*.c/*.h文件对中,我需要在一个文件中定义一个常量值,但是它也将用于其他文件。我应该如何声明和定义这个值?
应该static const ...和*.h文件里的一样吗?如extern const ...在*.h文件中并在文件中定义*.c?如果值不是原始数据类型(int,double等),而是 achar *或 a ,这有什么关系struct?(虽然在我的情况下它是一个double。)
通常,在文件中定义东西*.h似乎不是一个好主意。应该在文件中声明事物*.h,但在文件中定义它们*.c。但是,这种extern const ...方法似乎效率低下,因为编译器无法内联该值,而是必须始终通过其地址访问它。
我想这个问题的本质是:是否应该在 Cstatic const ...中的文件中定义值*.h,以便在多个地方使用它们?