int *arrayA[] = { &A0, &A1 };
と配列を用意しておいて

#define A(i) (*arrayA[(i)])

こうするぐらいしかアイデアが思い浮かばない