宏定义 循环,该如何处理

宏定义 循环
现在有宏定义PIC1,PIC2,PIC3,PIC4.......我想把这些宏放到一个循环里使用,有什么办法,谢谢各位!!
------解决思路----------------------
i 如果是一个宏参数, 可以.
如果是一个变量, 还得想其它办法改变下代码.
------解决思路----------------------
或者用switch也比宏强。
------解决思路----------------------
没太看懂,大概是这个意思吧。
for(i=0;i<4;i++);
{
switch(i)
{
case 1: PIC1;
break;
case 2: PIC2;
break;
case 3: PIC3;
break;
case 4: PIC4;
break;
}

}