如何表示一个变化的数组名

例如我有四个数组buf1[5],buf2[5],buf3[5],buf4[5],想根据i来判断是哪个数组bufi[5],这样写不可以吗

 char buf1[5] = {1},buf2[5] = {2},buf3[5] = {3},buf4[5] = {4},buf5[5] = {5};
char *bufs[5] = {
    buf1,
    buf2,
    buf3,
    buf4,
    buf5
};
char *pthis = bufs[i];

用数组的数组就是了
int[][] = { buf1, buf2, buf3, buf4 };

int buf[][] = { buf1, buf2, buf3, buf4 };

简单的定义一个二维数组就可以了

应该把你的问题需求都贴出来,说不定不需要变化数组的名字

应该把你的问题需求都贴出来,说不定不需要变化数组的名字

把数组放到一个集合里,然后根据变量i遍历集合

i是数组名的一部分,这肯定是不行的,可以用指针数组:

假定buf是char类型
 char *p[4]={ buf1,buf2,buf3,buf4};
 后面用p[1][j]和你用buf2[j]是一样的。