我想知道用 C90 初始化这个结构的最佳方法是什么,同时仍然保持整洁。
在我的头文件中,称之为 test.h,我定义了以下结构:
struct s_test_cfg{
char *a[3];
char *b[3];
char *c[3];
}
然后我将它声明为一个外部结构,以便我可以在 .c 文件中全局初始化它:
extern struct s_test_cfg test_cfg;
现在在我的 .c 文件中,我希望能够在全局范围内声明这样的内容(显然我要写的内容在 C90 中不受支持):
struct s_test_cfg test_cfg =
{ .a = {"a", "b", "c"},\
.b = {"d", "e", "f"},\
.c = {"g", "h", "i"} };
这显然使您尝试做的事情变得非常整洁和透明。如何在我的 C 文件中初始化与此语法一样干净的全局结构?谢谢。