向各位大侠请教一个问题。
我在a.c里定义了一个数组 char cUnitTab[]={...},由赋值确定数组长度, 在a.h中有下列内容 extern char cUnitTab[]; #define UNITLEN sizeof(cUnitTab) b.c包含a.h,使用UNITLEN 这个宏的时候提示返回0; 问题应该是a.h的变量声明中没有长度,但是由于cUnitTab的长度可能会因需要而变化,由赋值的内容决定,而且我希望维护这个程序时增加cUnitTab的内容时不用去考虑长度,由编译器自动给出。 请问,这个问题有什么好的解决办法吗?我试过一种方法是定义量会占用空间,并且在使用时很耗运行时间。 |