Это неправильный синтаксис для литерала массива.Вам нужно:
fwsubst(2 ,5.0,(double[2][2]){{2.0,2.0},{4.0,2.8}}, (double[2]){1.0, 9.6});
И вам нужно изменить определение функции для соответствия, поскольку double[2][2]
не преобразуется в double **
, а в double (*)[2]
:
int fwsubst(
unsigned long n,
double alpha,
double R[n][n], /* two-dimensional array, row-major */
double b[n] /* one-dimensional array */
);
...
int fwsubst(
unsigned long n,
double alpha,
double R[n][n], /* two-dimensional array, row-major */
double b[n] /* one-dimensional array */
){
...