In double (*foo)[2] what does the [2] represent

c, primitive, primitive-types

Solution

double (*foo)[2]

`foo` is a pointer to an array of two `double` elements.

For example:

double bla[2];
double (*foo)[2] = &bla;

Problem

In `double (*foo)[2]` what does the `[2]` represent? And how would I convert an array as such to an array of float* in C?

Original source