我需要创建具有相同名称的文件,但在文件名末尾附加一个数字以表明它是第n个文件。因此,在for循环中,我基本上要做到这一点:在C中创建编号文件
char *filename = "file";
strcat(filename, i); // put the number i at the end of the filename
显然是不这样做的方式,但任何想法,我怎么能完成这个任务?
感谢,
斯托伊奇
我需要创建具有相同名称的文件,但在文件名末尾附加一个数字以表明它是第n个文件。因此,在for循环中,我基本上要做到这一点:在C中创建编号文件
char *filename = "file";
strcat(filename, i); // put the number i at the end of the filename
显然是不这样做的方式,但任何想法,我怎么能完成这个任务?
感谢,
斯托伊奇
这样的事情呢?
char filename[256];
int i = 1;
// codes omitted...
sprintf(filename, "file%4d", i);
sprintf()
或snprintf()
与"file%d"
。
如果不是SO的简短回答限制(如果您编辑的速度太快,则为验证码),我会是第一个。哎呀! :-) – 2010-02-15 09:25:04
您可以使用sprintf。
除非你喜欢文件名中的空格,否则最好使用'%04d' – mouviciel 2010-02-15 09:25:51
@mviciel是的,那正是我想要输入的内容,我的手指不听我的。 :P – shinkou 2010-02-15 09:30:15
非常感谢! – Hristo 2010-02-15 10:02:06