编译:[错误]数组类型具有不完整的元素类型

时间:2016-04-07 19:33:23

标签: c gcc struct compilation

我正在尝试完成一个程序的问题,据我所知,我已经正确定义了结构,但是在编译时我得到这个错误代码3次,每个结构一次

错误讯息:

    34  18 - [Error] array type has incomplete element type

我的代码如下所示,任何建议都会非常感激,整个程序中有大约300行代码,如果你需要看到它,请告诉我,我不想让你们过多。再次感谢。

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>

    void fileRead();
    void readGrades();
    void readResults();
    void pointCompute();
    void sortGrades();
    void print();

    typedef struct{
        char subject[15];
        char level[2];
        char grade[3];
        int points[3];
    } temp;
    typedef struct{
        char subject[15];
        char level[2];
        char grade[3];
        int points[3];
    } grades;

    typedef struct{
        char subject[15];
        char level[2];
        char grade[3];
        int points[3];
    } results;
    struct temp temp[50];
    struct grades grades[50];
    struct results results[50];

1 个答案:

答案 0 :(得分:0)

因为它们是typedef,所以从变量定义行中删除struct。如果类型是实际结构,而不是typedef,则放置struct。此外,变量名称不能与类型名称相同。

temp temp_var[50];
grades grades_var[50];
results results_var[50];