typedef struct
{
char name[3];
bool initial_state;
bool final_state;
STATUSTRANSITION *transitions;
int numberTransitions;
} STATE;
typedef struct
{
char c;
STATE final;
} STATUSTRANSITION;
STATE不知道STATUSTRANSITION。我该如何解决这个问题?当我将STATUSTRANSITION置于STATE以上时,我对STATUSTRANSITION有同样的问题,因为它有STATE。
编辑:要清楚。我得到了结构的“未知类型”异常。答案 0 :(得分:4)
为了在声明中使用类型,您需要在使用之前定义或声明。唯一的例外是struct
本身的名称:您可以使用其标签在结构本身内声明字段。
在您的情况下,您应提供STATUSTRANSITION
的前瞻性声明,如下所示:
struct STATUSTRANSITION;
typedef struct
{
char name[3];
bool initial_state;
bool final_state;
struct STATUSTRANSITION *transitions;
int numberTransitions;
} STATE;
typedef struct STATUSTRANSITION
{
char c;
STATE final;
} STATUSTRANSITION;
答案 1 :(得分:2)
试试这个
send( :hello, "gentle", "readers")