c - 未处理的异常 (C)

标签 c compiler-errors unhandled-exception

我尝试制作一个程序,从数据文件导入网格并对其执行某些操作,但在尝试将网格导入多维数组时遇到问题。

我的 while 循环中的 if-else 语句出现“未处理的异常”错误。当我注释掉这部分代码时,它运行得很好。

int main( void ) {
    FILE* grid = fopen( FILE_NAME, "r" );
    int row = 0;
    int column = 0;
    int intGrid[21][21];

    // Null check omitted for space.

    while( fscanf( grid, "%d ", &intGrid[row][column] ) == 1 ) { // Loads the grid into an array
        if( intGrid[row][column] != -1 )
            column++;
        else
            column = 0;
            row++;
    }

任何人都可以找出我的代码中的问题吗?

最佳答案

缺少括号:

else { 
    column = 0;
    row++;
}

如果没有括号,始终会递增,并且很快就会耗尽数组维度。

关于c - 未处理的异常 (C),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40063469/

相关文章:

python - 在python解释器中执行多行时出错

c++ - 如何在 C++ 中访问 dll 文件中的函数

c - c中char数组和string的内存位置

c++ - Windows SDK 7.1 64 位构建 CloseHandle 显然不在 kernel32.lib 中

c - 为什么 K 的值在此代码中没有增加?

vb.net - 未定义类型 'CrystalDecisions.CrystalReports.Engine.Section'。

c - 如何摆脱C拼写检查程序中的标点符号?

curl - 使用curlpp编译时出错

c++ - 系统消息未处理异常

c# - UWP:未指定的错误 - 来自 HRESULT 的异常:0x80004005