[英]Unknown type name C
我知道在使用它们之前必须先定义它们,但是我得到了一个“未知类型名称错误”。
这是我的Node
定义:
struct Node {
position* p;
struct Node* next;
struct Node* prev;
};
这是我的声明(第96行):
Node* hashtable[HashArraySize];
我收到此错误消息:
P1.c:96:1: error: unknown type name ‘Node’
Node* hashtable[HashArraySize];
与将struct
标记视为新类型名称的C ++不同,如果您希望使用不带struct
Node
,则C需要显式的typedef:
typedef struct Node Node;
或者,您可以在声明中使用struct Node
:
struct Node* hashtable[HashArraySize];
Change Node* hashtable[HashArraySize];
struct Node* hashtable[HashArraySize];
要么
typedef struct Node {
position* p;
struct Node* next;
struct Node* prev;
} Node;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.