如何在C中创建创建文本文件序列

时间:2018-10-23 17:17:07

标签: c file sequence fopen fclose

我想创建文本文件序列,例如...

  

student1.txt
  student2.txt
  student3.txt
  ...

如何做到?

我有一个示例代码,但不适用于我的问题。

#include<stdio.h>

void main()
{
    FILE *fp;
    int index;

    for(index=1; index<4; index++)
    {
        fp=fopen("student[index].txt","w");
        fclose(fp);
    }
}

2 个答案:

答案 0 :(得分:1)

您正在使用固定的字符串“ student [index] .txt”,而不是使用您想要的数字作为字符串。

void main()
{
  FILE *fp;
  int index;
  char fname[100];

  for(index=1; index<4; index++)
  {
    sprintf(fname, "student%d.txt", index);
    fp=fopen(fname,"w");
    fclose(fp);
  }
}

答案 1 :(得分:0)

您不能将变量放在这样的字符串常量中。您需要使用sprintf构造所需的字符串:

for(index=1; index<4; index++)
{
    char name[20];
    sprintf(name, "student%d.txt", i);
    fp=fopen(name,"w");
    fclose(fp);
}