将参数传递给函数

Passing parameters to a functions

本文关键字:函数 参数传递      更新时间:2023-10-16

我创建了测试函数:void test(double** matrix);

我想把这个函数变量作为double matrix[2][2] = {{1,2},{2,3}};传递给它。但我邪恶的编译器写:cannot convert «double (*)[2]» to «double**» for argument «1» to «void test(double**)»

我需要做什么?

参数和参数的类型必须一致(或至少是兼容的)。在这里,您有一个double[2][2],并且您想将其传递给CCD_ 5。这些类型是不相关的:数组数组不是指针数组(转换为指向指针的指针)。

如果你真的想通过double [2][2],你必须将参数声明为double (*matrix)[2],CCD_ 8。

当然,如果您使用C++,您将需要定义一个Matrix类,并使用它。