相关疑难解决方法(0)

结构声明与定义

我如何声明,而不是定义一个结构,例如在多个文件之间共享的数据。我在定义原语时理解这个想法。因此,例如,我可能有:

extern int myvalue;  /* in shared header file */
Run Code Online (Sandbox Code Playgroud)

int myvalue = 5;   /* in data.c file */
Run Code Online (Sandbox Code Playgroud)

但是,我如何对结构做同样的事情。例如,如果我有以下类型:

   typedef struct {
       size_t size;
       char * strings[];
   } STRLIST;
Run Code Online (Sandbox Code Playgroud)

如果我然后使用语句:

STRLIST list;
Run Code Online (Sandbox Code Playgroud)

这既是声明又是定义。那么,如何应用与使用 extern 相同的原则?

c struct declaration extern

5
推荐指数
1
解决办法
4851
查看次数

标签 统计

c ×1

declaration ×1

extern ×1

struct ×1