1

我有两个头文件使用不同的值进行相同的定义:

 file1.h:
          #define NUM_OF_TREES 10
 file2.h:
          #define NUM_OF_TREES 20

在另一个文件中,我想定义limits.h #define MAX_NUM_OF_TREES 如何使用宏分配静态时间(预处理)的最大值?

4

1 回答 1

0

文件1.h:

  #define NUM_OF_TREES 10
  typedef unsigned char NUM1[NUM_OF_TREES];

文件2.h:

  #define NUM_OF_TREES 20
  typedef unsigned char NUM2[NUM_OF_TREES];

文件 3.c:

  typedef union {
      NUM1;
      NUM2;
  } FOR_MAX_SIZE;

 #define MAX_NUM_OF_TREES sizeof (FOR_MAX_SIZE); 
于 2016-05-13T11:36:49.033 回答