Я пытаюсь использовать библиотеку GSL для решения ОДЫ и у меня возникают некоторые трудности, используя указатель недействительногопроходя двойной массив по ничтожному типу для GSL в C
Мне нужно послать параметр более, что предполагается содержит массив массива:
double k1[2][4];
, который отправляется в
gsl_odeiv_system sys = {func, jac, 2, &k1};
это получает переложены на обоих FUNC и JAC в *params
int func (double t, const double y[], double f[], void *params)
в FUNC, я пытаюсь извлечь k1 через:
double k1[2][4];
k1 = *(double[][])params;
или
k1 = (double[][])params;
или ...
k1 = *(double *)params;
и т. д.
У меня вопрос: есть ли однолинейное решение?
спасибо! Я знаю, что могу просто передать k1 (и не & k1), но я стараюсь оставаться последовательным в коде. Не уверен, насколько это необходимо ... – Rasman
интересное примечание: мне не нужна фиктивная переменная ... кажется, она работает с 'double (* k1) [2] [4] = params; ' – Rasman