打印二维矩阵?

时间:2018-11-15 21:31:30

标签: c arrays matrix

您好,所以我不明白我的错误在哪里,我想逐行打印2D矩阵的内容:

void print_matrix(char s[], double m[], size_t rows, size_t cols)
{
printf("%s =\n", s);
    for (size_t i = 0; i < rows; i += 1)
    {
        for (size_t j = 0; j < cols; j += 1)
         {
            printf("%d ", m[i][j]);
         }
         printf("\n");
    }
}

I want it to be like this :
m1 =
1   2   3   4
5   6   7   8
9  10  11  12

在这里给我一个错误:m [i] [j],但没有别的。感谢您对我的初学者的帮助

1 个答案:

答案 0 :(得分:1)

如果希望R.string.import作为可变大小尺寸的二维数组存在,则可以使用VLA进行类似的操作。由于您是在for循环条件内声明变量,因此编译器应符合C99,因此您应有权访问VLA。*

<string name="text_import">import</string>

*脚注:虽然VLA是C99标准的强制性内容,但C11标准后退了一步,并将其作为可选功能。