如何使用C将结构分为不同的文件

时间:2018-10-11 02:05:25

标签: c

原始结构显示自爆

typedef struct {
        uint x;
        uint y;
    }RESERVE_TYPE;
extern RESERVE_TYPE myRam;

我需要分成2个头文件

file1.h
typedef struct {
        uint x;
    }RESERVE_TYPE;
extern RESERVE_TYPE myRam;

file2.h 

typedef struct {
        uint y;
    }RESERVE_TYPE;
extern RESERVE_TYPE myRam;

分隔后,我希望len = sizeof(RESERVE_TYPE);与main.c中的结果相同

1 个答案:

答案 0 :(得分:0)

您可以将它们分开,但是如果将它们包含在main.c中,则会在编译时出现错误,因为在两个头文件中都使用了相同的名称。根据您要实现的目标,使用联合会更准确。像

typedef union{uint x; uint y} RESERVE_TYPE;
extern RESERVE_TYPE myRam;