gpt4 book ai didi

c - 错误 : field has incomplete type in C

转载 作者:太空宇宙 更新时间:2023-11-04 06:18:06 24 4
gpt4 key购买 nike

这是我的库 (mylib.h) 中的一个结构定义:

struct Terra {
enum Tipo_terra tipo_terra;
enum Tipo_mostro tipo_mostro;
short tesoro;
struct Terra* terra_successiva;
};

这是错误:

In file included from progexam.c:3:0:    
mylib.h:20:18: error: field ‘tipo_terra’ has incomplete type
mylib.h:21:19: error: field ‘tipo_mostro’ has incomplete type

我已经使用 typedef 来定义“enum tipo_terra”和“enum tipo_mostro”,就像这样:

typedef enum { deserto, foresta, palude, villaggio, pianura } tipo_terra;
typedef enum { nessuno, scheletro, lupo, orco, drago } tipo_mostro;

是的,我(当然)使用了我的库

#include "mylib.h"

我尝试在结构声明之前和之后移动 typedef,没有任何变化,同样的错误。你能帮我吗?谢谢!

最佳答案

一些问题:

typedef enum { deserto, foresta, palude, villaggio, pianura } tipo_terra;
typedef enum { nessuno, scheletro, lupo, orco, drago } tipo_mostro;

struct Terra {
tipo_terra terra;
tipo_mostro mostro;
short tesoro;
struct Terra* terra_successiva;
};
  1. typedef了您的枚举,因此类型必须直接使用,没有enum前缀。
  2. 区分大小写,因此 Tipo_mostrotipo_mostro 不同。

关于c - 错误 : field has incomplete type in C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41117727/

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