如何在C中的文件名后增加数字?

zap*_*lec 0 c python file-io

我有一点问题.我需要在一个小程序中对很多文件进行一些小操作.到目前为止,我已决定在一个循环中操作它们,我只需更改名称后面的数字.这些文件都名为TFxx.txt,其中xx的数字从1增加到80.那么如何在一个循环中一个接一个地打开它们呢?我试过这个:

for(i=1; i<=80; i++) {
   char name[8] = "TF"+i+".txt";
   FILE = open(name, r);
   /* Do something */
  }
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,第二行将在python中工作但不在C中工作.我已经尝试用C进行类似的运行编号到这个程序,但我还没有发现如何做到这一点.格式不需要像第二行那样,但我想就如何解决这个问题提出一些建议.我需要做的就是能够打开许多文件并对它们执行相同的操作.

Dan*_*uţă 5

你可以使用sprintf如下:

for(i=0; i<=80; i++) {
   char name[32];
   memset(name, 0, sizeof(name));
   FILE *fp;
   sprintf(name, "TF%d.txt", i);
   fp = fopen(name, "r");
   /* Do something */
  }
Run Code Online (Sandbox Code Playgroud)