0

我想根据 for 循环的索引来命名我的文件描述符 fp。例如,

char* fbad[4]= "fbad";
char* mod[3]="mod";

for (int i=0; i<10; i++) {
  sprintf(fbad_file, "%s%s%d", fbad,mod,i);
  FILE *fp = fopen(fbad_file, "w");  ////????????????
  /*then do stuff here*/
  fclose(fp);
}

一个如何连接 *fp 和 i 这样的描述符对于每个打开的文件都是唯一的?比如我要实现的是:for i=6, FILE *fp6.

提前致谢。

4

1 回答 1

0

For example, what I want to achieve is: for i=6, FILE *fp6.

使用数组:

FILE *fp[10];
for(int i=0; i<10; i++) {
    fp[i] = fopen(...);
}

虽然,如果您在 for 循环内关闭文件指针,那么重用有什么问题fp

于 2012-08-14T23:20:02.277 回答