有没有办法extern typedef变量

时间:2014-01-25 18:18:53

标签: c structure typedef extern

我的文件f1.h包含大量的声明行等。 说我变量typedef struct abc_t ABC;

我希望获得ABC f2.c的大小而不包括f1.h&实用函数,因为我不希望在f1.h中需要f2.c的其他声明,这会不必要地增加二进制大小。

我只需要sizeof ABC

  • typedef变量,我们应该如何在f2.c中获取其大小?
  • 有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:2)

您可以简单地声明另一个变量来存储大小。所以在某些标题中 - 不是f1.h - 你会有

extern unsigned size;

而在f1.c中你需要定义它

unsigned size = sizeof(<whatever type you want>)