#include <stdio.h>

void func1(int **p);
void func2(int (**p)[2]);

int main()
{
	int *p1;
	int (*p2)[2];

	func1(&p1);
	printf("p1 %d\n", p1[1]);
	func2(&p2);
	printf("p2 %d\n", p2[1][1]);
	return 0;
}

void func1(int **p)
{
	static int a[] = {0,1};
	*p = a;
}

void func2(int (**p)[2])
{
	static int a[][2] = {{0,1},{2,3},};
	*p = a;
}
