在代码重复的情况下,我具有完全相同的结构体但名称不同。结构体很小,因此有可能在将来修改代码时注入错误。以下仅是说明问题的示例:
struct read_data_on_disk {
int a;
char b;
};
struct read_data {
int a;
char b;
};
可以定义其中一个,例如read_data_on_disk,另一个可以定义为别名吗?我正在寻找类似以下的内容:
typedef struct read_data_on_disk struct read_data; // this is wrong though
答案 0 :(得分:4)
那几乎是正确的。试试这个:
struct read_data_on_disk {
int a;
char b;
};
typedef struct read_data_on_disk read_data;
但是正如dbush上面指出的,如果内容相同,为什么要有两个结构?