在C编程中错误“无法忽略空值,因为它应该是”

时间:2012-04-15 18:40:56

标签: c

这是我的代码中的一部分:

Type* compileExpression2(void) {
    Type* type1;
    Type* type2;
    type1 = compileTerm();
    type2 = compileExpression3();
}

Type* compileExpression3(void) {
    Type* type1;
    return type1;
}

Type* compileTerm(void) {
    // TODO: check type of Term2
    Type* type;
    type = compileFactor();
    compileTerm2();
    return type;
}

我使用Code :: Blocks来构建它并返回此错误:

  

空值不被忽略,因为它应该是

在这一行:

type2 = compileExpression3();

请告诉我原因。


非常感谢你的所有答案。 我发现了我的问题。

是否在我的include文件中,compileExpression3已被声明为“void compileExpression3(void);”

1 个答案:

答案 0 :(得分:3)

通过删除,compileTerm可能会返回void

修改

您添加了compileTerm但现在缺少compileFactor