int allocated[size + 1];
int * const array = allocated;

or

int allocated[size];
int * const array = allocated - 1;

後者だと、厳密には実装依存なのかな。大抵巧くいくはずだけど。