C语言报错不允许使用不完整的类型
时间: 2023-08-15 16:08:54 浏览: 1072
C语言错误提示
"不允许使用不完整的类型"这个错误通常是因为在使用一个结构体或联合体的成员时,该结构体或联合体的定义还没有完成。这种情况通常发生在使用了不完整类型的指针时。
例如,下面的代码就会出现这种错误:
```c
struct node {
int value;
struct node *next; // 不允许使用不完整的类型
};
```
这是因为在定义 `struct node` 时,`struct node *next` 的类型还没有被完全定义。为了避免这个错误,可以在 `struct node` 的定义之前先声明该类型:
```c
struct node; // 声明 struct node 类型
struct node {
int value;
struct node *next; // 此时可以使用 struct node * 类型
};
```
另外,如果使用了其他的不完整类型,比如未定义的结构体或联合体,也会出现类似的错误。在使用这些类型之前,需要先定义它们。
阅读全文