Этот ответ предоставлен вам возможностью использования Spiral Rule. Способность понимать сложное выражение, начиная с неизвестного элемента и прочитывая его (сначала разрешая вещи в скобках). Очень полезный навык при чтении кода.
bar - bar
bar() - is a function
bar(int,) - which takes an int...
bar(int, (*)()) - and a function pointer
bar(int, double(*)()) - which returns a double
bar(int, double(*)(double,)) - and takes a double...
bar(int, double(*)(double, double[])) - and an array of doubles
(*bar(int, double(*)(double, double[]))) - and returns a pointer
(*bar(int, double(*)(double, double[])))() - to a function
(*bar(int, double(*)(double, double[])))(double) - taking a double
double(*bar(int, double(*)(double, double[])))(double) - which returns a double
Это был трудный путь ... Есть, конечно, сайтов, которые делают это проще, на cdecl сайт, например, но хорошо читать код, даже если вы не можете попасть в интернет.
не знаю, что это за тип, но вдруг я думаю, что Тим Хортонс по какой-то причине ... –
объявить бар как функцию (int, указатель на функцию (double, array of double) return double) возвращающий указатель на функция (двойная) двойная. (Я [обманул] (http://cdecl.org/).) –
(И это много разговоров). –