1

我正在尝试将浮点数数组中的值复制到 4x4 浮点数矩阵,但不断收到这个烦人的错误“从'float'类型分配给'float [4]'类型时不兼容的类型”请帮助我......

这是类型定义:

typedef float mat[4][4];

然后函数是这样的:

void function_Read(mat *matrixPointer, float *arrayOfFloats) {

    int indexOfArray;
    int rowIndexOfMatrix = 0;
    int columnIndexOfMatrix = 0;
    int sizeOfArrayOfFloats = sizeof (arrayOfFloats) / sizeof (arrayOfFloats[0]);

    for (indexOfArray = 0; indexOfArray < sizeOfArrayOfFloats; indexOfArray++) {
        /* the line below causes the error */
        matrixPointer[columnIndexOfMatrix][rowIndexOfMatrix] = arrayOfFloats[indexOfArray];

        columnIndexOfMatrix++;

        if (columnIndexOfMatrix == 4) {
            columnIndexOfMatrix = 0;
            rowIndexOfMatrix++;
        }
        if (rowIndexOfMatrix == 4) {
            rowIndexOfMatrix = 0;
        }
    }
}

另外,有人可以为 c 中的高级指针内容添加指向文档的链接吗?我总是让调试器闪现错误,然后有时甚至在不了解问题的情况下纠正它们。

谢谢 !

4

0 回答 0