gpt4 book ai didi

c - 类型化结构包含将此类型化结构作为参数的类型化函数

转载 作者:行者123 更新时间:2023-11-30 14:49:30 26 4
gpt4 key购买 nike

这是完全错误的,没有办法,还是我必须做点别的?

例如:

typedef void (*UserFunc)(Test *tx);

typedef struct{
int a;
char b;
UserFunc func;
} Test;

我收到此错误:

c.c:5:26: error: unknown type name ‘Test’
typedef void (*UserFunc)(Test *tx);
^~~~
c.c:10:1: error: unknown type name ‘UserFunc’
UserFunc func;
^~~~~~~~

当我向下移动函数 typedef 时:

typedef struct{
int a;
char b;
UserFunc func;
} Test;

typedef void (*UserFunc)(Test *tx);

我得到:

c.c:8:1: error: unknown type name ‘UserFunc’
UserFunc func;
^~~~~~~~

最佳答案

您必须先声明 Test,然后再定义它:

typedef struct Test Test;

typedef void (*UserFunc)(Test *tx);

typedef struct Test {
int a;
char b;
UserFunc func;
} Test;

关于c - 类型化结构包含将此类型化结构作为参数的类型化函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49549947/

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