如何重写以下代码块?我需要通过函数 token() 提取一些参数,然后使用这些参数调用 printf。参数数量未知。
char *S[32]; int i=0;
while (t) {
char *s=token(&t, lineno, 0);
assert(i<sizeof(S)/sizeof(S[0]));
S[i++]=s;
}
printf(f, S[0], S[1], S[2], S[3], S[4], S[5], S[6], S[7], S[8], S[9],
S[10], S[11], S[12], S[13], S[14], S[15], S[16], S[17], S[18], S[19],
S[20], S[21], S[22], S[23], S[24], S[25], S[26], S[27], S[28], S[29],
S[30], S[31]);