警告:控制到达非void功能的结尾

时间:2018-11-02 01:57:04

标签: c function multidimensional-array warnings

我很确定我有正确的return语句,所以我不知道为什么它显示了这一点。

/ *检查表的全部功能* /

bool check_table_full (char board[][SIZE])
{
    int row, col;

    for (row = 0; row < SIZE; row++) {
    for (col = 0; col < SIZE; col++) {
        if (board[row][col] != '_') {
        return true;
        }
        else {
        return false;
        }
    }
    }
}

2 个答案:

答案 0 :(得分:1)

您可以尝试以下操作,例如:

bool check_table_full (char board[][SIZE])
{
    int row, col;

    for (row = 0; row < SIZE; row++) {
    for (col = 0; col < SIZE; col++) {
        if (board[row][col] != '_') {
        return true;
        }else {
        return false;
        }
    }
    }
    return false; 
}

答案 1 :(得分:0)

编译器通常无法理解人类似乎显而易见的东西。最后,您需要返回默认值才能说服编译器。或者重新构造函数,以免您不在函数中间。