gpt4 book ai didi

c - 包含数组包含相同结构的元素的结构

转载 作者:行者123 更新时间:2023-11-30 19:11:02 25 4
gpt4 key购买 nike

typedef struct Sym_item{
char *name;
symbolType type;
char *data;
bool fce;
TList *args;
bool init;
tHTable *ptr_loctable; // .. this is conflicting
char *class_name;
bool isstatic;
struct Sym_item *nextptr;
}iSymbol;


typedef struct Hash_table{
iSymbol *ptr;
}Hash_item;


typedef Hash_item tHTable[Hash_table_size]; // .............. this is conflicting

我正在使用这个结构 iSymbol 其中包含 tHTable 这是最近定义的,但我需要它还包含符号数组作为此结构。

这表示编译器:

error: unknown type name ‘tHTable’<br>
tHTable *ptr_loctable;

最佳答案

考虑根本不使用typedef

如果您确实想使用 typedef,请考虑独立定义 structtypedef,如下所示:

struct a { ... }; [...] typedef struct a a_t;

如果您需要在此进行前向声明,则无论如何都必须进行此拆分。

struct Hash_table;

struct Sym_item {
char *name;
symbolType type;
char *data;
bool fce;
TList *args;
bool init;
Hash_item *ptr_loctable[Hash_table_size];
char *class_name;
bool isstatic;
struct Sym_item *nextptr;
};

struct Hash_table {
struct Sym_item *ptr;
};

typedef struct Sym_item iSymbol;
typedef struct Hash_table Hash_item;
typedef Hash_item tHTable[Hash_table_size];

关于c - 包含数组包含相同结构的元素的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40762824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com