This is a pointer to a pointer.
& is a reference operator and can be read as address of . In your example, it will receive another pointer, that is, the address of the pointer specified as its argument, that is, a pointer to a pointer.
Take a look at the following example:
int **ipp; int i = 5, j = 6, k = 7; int *ip1 = &i, *ip2 = &j; ipp = &ip1;
You'll get:

In the above example, ipp is a pointer to a pointer. ipp stores the address ip1 and ip1 stores the address i .
You can check Pointers to pointers for more information.
source share